Volker Ruppert
6dba96d10a
Some changes related to the PCI ROM handling.
...
- Added support for setting memory write handler to NULL (ROM case).
- Added new PCI device method after_restore_pci_state(). It currently handles
the PCI ROM case only (could be extended).
2017-10-08 15:54:21 +00:00
Volker Ruppert
2ec57b8a6b
Fixed some more C++11 warnings.
2014-12-18 17:52:40 +00:00
Volker Ruppert
2ea45c0e4d
implemented volatile BIOS memory write support (controlled by PIIX/PIIX3 XBCS register)
2012-12-02 19:59:23 +00:00
Stanislav Shwartsman
515d8b5c25
add new instrumentation callbacks for physical memory access from CPU
2012-06-18 11:41:26 +00:00
Volker Ruppert
ed669adfd1
- rewrite of the PCI memory management code for the expansion ROM and BIOS area
...
- store memory type array in the memory object to avoid calling the pci plugin
frequently. The pci code calls a memory method to change the memory type in
case the PAM registers are modified.
- removed now obsolete code and minor cleanups
2012-01-19 18:32:11 +00:00
Stanislav Shwartsman
d3fe5c607e
compilation fix
2011-12-02 20:11:57 +00:00
Stanislav Shwartsman
81f55b5be7
improved the fix for busmaster DMA transfers from device to memory done by Volker
2011-12-02 19:41:54 +00:00
Volker Ruppert
1f18f5831f
- final fix for busmaster DMA transfers from device to memory: new memory method
...
writePhysicalBlock() replaces the buggy code in iodev.h.
Calling pageWriteStampTable.decWriteStamp(addr) is required here to make memcpy() work.
2011-11-30 17:11:43 +00:00
Stanislav Shwartsman
00981cd7a6
Adding Id and Rev property to all files
2011-02-24 22:05:47 +00:00
Stanislav Shwartsman
9c4cca1144
optimize SMC detection from memory.cc as well
2011-01-04 21:03:44 +00:00
Stanislav Shwartsman
9aa503cb9d
fixed warnings for win64 compilation
2010-11-23 14:59:36 +00:00
Stanislav Shwartsman
e3e797a2de
ready to enlarge supported BIOS ROM to 2M
2010-05-18 08:54:01 +00:00
Stanislav Shwartsman
d22427ede1
mark places what have to be fixed to enable 2M BIOS ROM images
2010-05-18 07:44:37 +00:00
Stanislav Shwartsman
bd60e0264c
change Copyright to Bochs Project
2009-12-04 16:53:12 +00:00
Stanislav Shwartsman
714a537a77
fixed typo bug causing Bochs crash
2009-11-29 17:24:29 +00:00
Stanislav Shwartsman
1c70aad0f9
fixes for >=4G physical memory
2009-10-17 18:42:15 +00:00
Stanislav Shwartsman
5880d7f49c
bugfix with phy addr long
2009-08-11 15:56:09 +00:00
Stanislav Shwartsman
f29b5a97d6
fixes with long phy addr
2009-08-10 08:08:25 +00:00
Stanislav Shwartsman
74c62a59ab
Fixes for > 32-bit physical addr range
2009-08-03 15:01:07 +00:00
Stanislav Shwartsman
4470c6a1c8
make ICACHE always enabled option and deprecate it in the configure script
...
Trace cache still can be turned off
2009-03-13 18:48:08 +00:00
Stanislav Shwartsman
3a1852ea23
take local APIC read/write access into CPU class from BX_MEM (needed for APIC virtualization later)
2009-02-17 19:20:47 +00:00
Volker Ruppert
e5eac65b59
- removed wrong character from FSF address (converted invisible and useless
...
2-byte character)
- updated FSF address in some files
- added license to some files
2009-02-08 09:05:52 +00:00
Stanislav Shwartsman
9929e6ed78
- updated FSF address
2009-01-16 18:18:59 +00:00
Volker Ruppert
815dff019e
- converted iodebug device to a plugin
2008-12-30 18:11:13 +00:00
Stanislav Shwartsman
ce425f02d9
Small fix towards 40-bit physical address emulated
2008-10-18 18:10:14 +00:00
Stanislav Shwartsman
f303d61cc1
Fixed 'dirty page' support in debugger
2008-07-26 14:44:26 +00:00
Stanislav Shwartsman
8d17e7b539
Fixed watchpoints handling
2008-05-31 20:59:38 +00:00
Stanislav Shwartsman
6ebae41ad7
print physcial address with special format - preparations for 64-bit physical address emu
2008-05-09 22:33:37 +00:00
Stanislav Shwartsman
11b564b2f0
Speed up memory access by devices
2008-05-02 23:18:51 +00:00
Stanislav Shwartsman
6225aa64f5
Move monitor check earlier - it should handle SMM as well
2008-05-01 20:46:00 +00:00
Stanislav Shwartsman
fda4d38959
32-bit systems have a problem to allocate large amount of physical memory for Bochs simulation which makes simulation with 4G address space virtually impossible. But in most of the cases when 4G physical address space defined - it is not touched by default on every run so it is possible to allocate only really accessed blocks. This commit made all necessary preparations for it.
2008-04-17 14:39:33 +00:00
Stanislav Shwartsman
fea49bb270
Fixed linear address wrap in legacy (not long64) mode
2008-04-07 18:39:17 +00:00
Stanislav Shwartsman
25a9b9fef1
whitespace cleanup again
2008-02-03 20:27:06 +00:00
Stanislav Shwartsman
e137560b14
Complete MONITOR/MWAIT implemntation (including monitoring of memory range)
...
Fixed PANIC in read/write Cr/Dr - should #UD with unkown register used
2007-11-01 18:03:48 +00:00
Stanislav Shwartsman
624a543c34
Fix compilation warning
2007-10-09 20:23:01 +00:00
Stanislav Shwartsman
476baaf1d8
ThiS patch makes watchpoints work even if they are triggered on CPUs other than CPU 0 during SMp.
...
Patch from developers mailing list
2007-09-27 16:10:45 +00:00
Stanislav Shwartsman
97c0bc40a2
Bochs website tracker patch
...
shows where write outside of memory occurred
2006-12-29 08:02:35 +00:00
Volker Ruppert
a3908d6e86
- moved BX_USE_MEM_SMF to all the other SMF definitions in config.h.in (should
...
be set to 1, since there is only one address space present)
- fixed memory object member to support the static case (SMF)
2006-09-02 12:08:28 +00:00
Stanislav Shwartsman
d17eb99f76
fixed allocated physical memory limit check in memory.cc
...
Force eflags before saving them - register eflags using param handlers
2006-06-01 20:05:15 +00:00
Stanislav Shwartsman
b0cbaf70e0
Avoid double check for a20addr <= BX_MEM_THIS len
2006-05-31 20:23:58 +00:00
Stanislav Shwartsman
6a0d15ee31
Veto direct write to the 0x000C0000 to 0x000EFFFF area
2006-04-29 16:55:22 +00:00
Stanislav Shwartsman
b271bcd9c6
Fixed compilaion problem on Linux gcc 3.3.4
2006-03-28 21:09:04 +00:00
Stanislav Shwartsman
4fd9bd53c3
Change Bit32u -> bx_phy_address in memory
2006-03-28 16:53:02 +00:00
Stanislav Shwartsman
c7d142200f
Implement SMRAM conrol register in i440fx chipset and all its functionality in memory class
2006-03-26 22:15:07 +00:00
Stanislav Shwartsman
5c3fba4399
Support access to SMRAM in memory object
...
Cleanup in CPU code
2006-03-26 18:58:01 +00:00
Stanislav Shwartsman
7b6c2587a9
Now devices could be compiled separatelly from CPU
...
Averything that required cpu.h include now has it explicitly and there are a lot of files not dependant by CPU at all which will compile a lot faster now ...
2006-03-06 22:03:16 +00:00
Stanislav Shwartsman
c0aeb1b073
Substitute NULL to BX_CPU_C parameter instead of BX_CPU(0) for memory ops originated by devices
2006-03-06 19:23:13 +00:00
Stanislav Shwartsman
7ed117f0e0
Add 8-byte memory access support, all 8-byte memory accesses executed byte-byte before.
2006-03-03 12:55:37 +00:00
Stanislav Shwartsman
e297df457a
Roll back the try to move Local APIC memory access to CPU.
...
It was fast and fine but had serious correctness problems with RMW apic access
2006-03-02 23:16:13 +00:00
Stanislav Shwartsman
5fad793989
move local apic handling to the access_linear function for the memory class.
...
speedup the whole simulation by 2% !
2006-03-01 22:32:24 +00:00