Stanislav Shwartsman
9aa503cb9d
fixed warnings for win64 compilation
2010-11-23 14:59:36 +00:00
Stanislav Shwartsman
c7dba3525a
Fixed warnings (patch from mailing list)
2010-08-15 19:57:50 +00:00
Stanislav Shwartsman
155c527e35
Enable 2M BIOS images
2010-05-18 09:01:08 +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
44885c4ef5
rom_present is not need to be BX_MEM_C member
2010-05-17 19:42:30 +00:00
Stanislav Shwartsman
79466dffe2
apic virtualization + vmx fixes
2010-03-16 14:51:20 +00:00
Stanislav Shwartsman
11de02bd89
MONITOR/MWAIT: rewritten MONITOR/MWAIT implementation from scratch
2010-03-07 09:16:24 +00:00
Stanislav Shwartsman
5df864b1f1
Move param_names.h into bochs root folder
2010-02-26 14:18:19 +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
d1a0303d43
Use 1M blocks to allocated memory - avoid crash with odd mem sizes
2009-10-24 14:37:44 +00:00
Stanislav Shwartsman
07222cc375
cleanup
2009-10-23 13:23:31 +00:00
Stanislav Shwartsman
3457cbb78c
Fixed PANIC message about all allocated memory already used
2009-10-23 08:50:07 +00:00
Stanislav Shwartsman
1c70aad0f9
fixes for >=4G physical memory
2009-10-17 18:42:15 +00:00
Stanislav Shwartsman
0a86c3c06f
fixed restore bug
2009-10-16 21:54:00 +00:00
Stanislav Shwartsman
da4722e257
optimize sr params
2009-10-16 18:29:45 +00:00
Stanislav Shwartsman
ab3f2cb6d3
desctructor fixes
2009-10-16 17:21:49 +00:00
Stanislav Shwartsman
92aecadb18
allow to emulate more guest RAM that host could allocate, it is fine until guest tries to access all the allocated memory
2009-10-16 17:10:36 +00:00
Stanislav Shwartsman
140d2d1508
cleanups
2009-10-15 21:39:40 +00:00
Stanislav Shwartsman
a7680fe2ec
remove unused function
2009-10-15 20:53:30 +00:00
Stanislav Shwartsman
3dbb1da68a
remove "dirty" pages tracking - it is too memory consuming and can fit with >4G phy addr space
2009-10-15 20:50:33 +00:00
Stanislav Shwartsman
1b248b5212
fixes for future
2009-10-15 16:14:30 +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
b15792f955
dbg stuff fixes for > 32 bit phy mem
2009-08-10 07:51:41 +00:00
Stanislav Shwartsman
74c62a59ab
Fixes for > 32-bit physical addr range
2009-08-03 15:01:07 +00:00
Stanislav Shwartsman
3ffda1442a
Allow loading roms bigger than 0x10000. Set the limit to 0x20000.
2009-03-29 20:08:27 +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
6fe0b40b44
move a20 handling into getHostAddr method of BX_MEM
2009-03-08 21:23:40 +00:00
Volker Ruppert
9e3dd83e85
- reduce some more dependencies and related Makefile.in updates
2009-02-23 11:06:53 +00:00
Volker Ruppert
790eec83ca
- converted I/O APIC to a device plugin
...
- updated dependencies
2009-02-22 10:44:50 +00:00
Stanislav Shwartsman
1b72e66bb3
support for apic global disable
...
separate between I/O apic and local apic
2009-02-18 22:25:04 +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
501952efdd
- removed unused logfunctions member 'type' and related method 'settype()'
...
- updated FSF address in copyright
2009-01-10 11:30:20 +00:00
Volker Ruppert
e12b21e647
- update all dependencies
2009-01-03 09:54:10 +00:00
Volker Ruppert
815dff019e
- converted iodebug device to a plugin
2008-12-30 18:11:13 +00:00
Volker Ruppert
01b0ed241b
- fixed endianness problems at PCI DMA block transfers using getHostMemAddr()
...
and memcpy()
- changes in getHostMemAddr() for the usage outside of the cpu
2008-12-13 11:03:36 +00:00
Stanislav Shwartsman
d7fa44d270
optimize code access detection
2008-12-05 22:34:42 +00:00
Stanislav Shwartsman
0f5f075e4d
- Fixed theoretically possible pageWriteStamp overflow
2008-10-21 19:50:05 +00:00
Stanislav Shwartsman
d12c08f720
Typo fixed
2008-10-18 18:14:04 +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
f6b7fecba2
For future 64-bit ph.addr
2008-05-10 21:36:55 +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
73d8bd3af4
Hide more memory variables
2008-05-01 20:28:36 +00:00
Stanislav Shwartsman
f5780a5f5c
Hide some BX_MEM_C variables
...
Optimize resolve16 methods - by reducing their amount again - reduce chance for misspredictin
2008-05-01 20:08:37 +00:00
Stanislav Shwartsman
297087fea9
fixed memory handler params - use bx_phy_address data type
2008-04-29 22:14:23 +00:00
Stanislav Shwartsman
d8c77cc1ae
Small cleanup for memory class
2008-04-17 20:20:43 +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
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