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
a459a64f3e
whispace, tab2space, indent, dos2unix and other cleanups
2008-02-15 22:05:43 +00:00
Stanislav Shwartsman
25a9b9fef1
whitespace cleanup again
2008-02-03 20:27:06 +00:00
Stanislav Shwartsman
37fbb82baa
Cleanups. Move bxInstruction_c definition to separate file instr.h
2008-01-29 17:13:10 +00:00
Stanislav Shwartsman
72d72c92d4
Fixed warnings of VC2008
2007-12-30 18:02:22 +00:00
Stanislav Shwartsman
838fb2a048
Fixing V2008 warnings - they found a bug in sse_pfp.cc !
2007-12-23 17:21:28 +00:00
Stanislav Shwartsman
92f7a3a805
Fixed several compilation errors under OSX
2007-12-10 19:05:07 +00:00
Volker Ruppert
cc80157a94
- fixed compilation error
2007-11-02 23:30:07 +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
a4e20e9d29
warnings fixed
2007-10-24 23:02:09 +00:00
Stanislav Shwartsman
42fdd8a3a1
During Bochs benchmarking I figured out that hostasm actually slow down the emulation ... so remove this ugly code which also doesn't help :)
...
speedup flags update for some instructions - idea was taken from DT patch by h.johansson
2007-10-21 22:07:33 +00:00
Stanislav Shwartsman
624a543c34
Fix compilation warning
2007-10-09 20:23:01 +00:00
Stanislav Shwartsman
071c5c1a26
A lot of changes but everything is really trivial.
...
Make save/restore default feature, the configure option for save/restore removed from configure script and save/restore made available forever. All code now assume it is exists. Bochs save/restore tree previosly called "save_restore" renamed to "bochs" tree and it will be havily used everywhere, starting from save/restore and ending by various bochs debugger functions. I am going to rework debugger code to get rid of debug CPU access functions and use this "bochs" param tree instead
2007-09-28 19:52:08 +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
412eeeeb7c
Get crregs definition to separate file from cpu.h
2007-09-10 16:00:15 +00:00
Stanislav Shwartsman
593f9d5f36
Fixed typo
2007-05-15 12:48:59 +00:00
Stanislav Shwartsman
b6c8275cfd
remove old PIT model and always use Greg Alexander's new one
2007-04-08 21:57:06 +00:00
Stanislav Shwartsman
9d907b5f65
Try to specify everywhere the list size in bx_list_c constructor
2007-04-03 22:38:49 +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
0c827dcbf1
- implemented debugger access to SMRAM area
2006-10-02 17:40:20 +00:00
Volker Ruppert
aacc148f7c
- initial revision of the 32-bit init code for the Bochs BIOS
...
* CPU, PCI, ACPI and SMM init
* MP and ACPI table generation
- MP table generation hack in the Bochs memory code disabled (should be removed)
- don't test the checksum of large BIOS images (for now)
- existing 16-bit PCIBIOS init disabled for now
2006-09-28 19:01:04 +00:00
Volker Ruppert
0a804aeb18
- memory cleanup code moved to a separate method (called from bx_atexit())
...
- fixed memory handler init and cleanup code (memory leaks)
2006-09-15 17:02:52 +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
Volker Ruppert
77217aa7b8
- fixed memory init code for restart support in wx (a lot more changes in other
...
parts of Bochs are needed to make it really work)
2006-09-01 18:14:13 +00:00
Stanislav Shwartsman
1deddb9f0e
Fix linking problem with debugger enabled
2006-06-06 16:46:08 +00:00
Stanislav Shwartsman
fea15294b5
Fixed compilation error in init.cc
...
Move initialization of memory object to misc_mem.cc
2006-06-03 12:59:14 +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
594b8cce47
Fixed segfault with bochs debugger but reported today
2006-05-31 17:20:52 +00:00
Stanislav Shwartsman
8b0df8e99b
Merge SAVE_RESTORE branch to CVS
2006-05-27 15:54:49 +00:00
Stanislav Shwartsman
6a0d15ee31
Veto direct write to the 0x000C0000 to 0x000EFFFF area
2006-04-29 16:55:22 +00:00
Stanislav Shwartsman
41204ede1a
Fixed compilation err with debugger ON
2006-04-06 16:43:36 +00:00
Volker Ruppert
05280a1eba
- fixed handling of BIOS extensions with base address within the 0xe0000 segment
...
- fixed a warning
2006-04-05 16:58: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
da3d26d7f4
Preliminary implemntation of SMM save statei
...
Fixed fetchModeMask for load32bitOsStack
2006-03-27 18:02:07 +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
f3ac069c90
initialize new BX_MEM_C member
2006-03-26 19:48:54 +00:00
Stanislav Shwartsman
b8be848943
Use access_type param in getHostMemAddr, less efficient but no copy-paste at least
2006-03-26 19:39:37 +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
Stanislav Shwartsman
dfeaf141f0
Register I/O APIC as memory handler, optimize memory handlers array
2006-02-27 19:04:01 +00:00
Volker Ruppert
6311fface8
- pci options rewritten to a parameter tree
...
- proposed parameter tree updated
- pci presence flag stored in the memory code
2006-02-19 21:35:50 +00:00
Volker Ruppert
7a48a576b5
- fixed ROM address range check
2006-02-11 09:35:54 +00:00
Stanislav Shwartsman
c7dd4185a7
Do not pass crc32 function as parameter to memory class - it is available as global function now
2006-01-28 16:16:03 +00:00