Stanislav Shwartsman
a74b63eb3d
Allow writing PCE to CR4
2006-01-13 11:11:29 +00:00
Stanislav Shwartsman
d7d2de421f
Remove code duplication in CPU and memory objects initialization
2006-01-11 18:22:12 +00:00
Stanislav Shwartsman
5899932f0c
Merge APIC patch to the CVS.
...
- Fix lowest priority interrupt delivery from I/O APIC
- XAPIC support
- Implemented APIC bus functionality
- cleanup APIC code
2006-01-10 06:13:26 +00:00
Stanislav Shwartsman
89e3472178
Fix validate_seg_regs check
2006-01-09 19:34:52 +00:00
Stanislav Shwartsman
393a653fb4
Fix typo
2006-01-05 21:40:07 +00:00
Stanislav Shwartsman
b07e698b3e
Initialize CPU and APIC after the bx_pc_system object
2006-01-05 21:39:11 +00:00
Volker Ruppert
97e1f39d8f
- I/O APIC signal handling rewritten ("backported" from qemu)
...
- don't flood the logfile if APIC EOI has no effect
- fixed a warning in the APIC code
- TODO: fix IRQ 0 handling, implement ExtINT
2006-01-01 11:33:06 +00:00
Stanislav Shwartsman
6ff8fccfc4
Fixed cross-segment boundary check, when instruction ends on the segment boundary it should generate GP(0)
2005-12-28 19:18:50 +00:00
Stanislav Shwartsman
9e4a3675d3
Cleanup APIC code
...
Fixed APIC timer problem (too many registered timers) reported by Brendan
2005-12-26 19:42:09 +00:00
Stanislav Shwartsman
279c67ae37
Fix debug message
2005-12-23 14:24:47 +00:00
Stanislav Shwartsman
dfc633ef0a
New debug function in cpu
2005-12-19 17:58:08 +00:00
Stanislav Shwartsman
cd2a8da34c
Add more debugging/instrumentation functionality
2005-12-14 20:05:40 +00:00
Stanislav Shwartsman
8627bc1596
Fixed bug from prev commit
2005-12-13 20:42:22 +00:00
Alexander Krisak
99fae60a0e
Small icache optimization
2005-12-13 14:18:34 +00:00
Stanislav Shwartsman
5f339a5fd8
Small debug fixes
2005-12-12 22:01:22 +00:00
Stanislav Shwartsman
70cc5a7fb0
Fix incorrect commit
2005-12-12 19:54:48 +00:00
Stanislav Shwartsman
f863d1e902
Generate #GP exception instead of #TS when TSS selector points to bad TSS
2005-12-12 19:44:06 +00:00
Stanislav Shwartsman
1f2cde53f0
Fix arbitration of local apic when issuing lowest priority interrupt or arbitrating between different local apics. APR (arbitration priority register) should be used for lowest priority interrupt delivery and available to user software and ARB_ID should be software transparent APIC internal
2005-12-11 21:58:53 +00:00
Stanislav Shwartsman
8b8d4900ed
Implement read/write of ESR register
2005-12-11 20:01:54 +00:00
Stanislav Shwartsman
faff702f44
GP(0) on cross segment boundaryu instruction
2005-12-09 21:21:29 +00:00
Stanislav Shwartsman
abe9791fe6
Fix typo
2005-11-28 22:42:29 +00:00
Stanislav Shwartsman
1f2913477e
Fix typo ...
2005-11-28 22:35:43 +00:00
Stanislav Shwartsman
82ccada927
Merged and committed #SF patch from wmrieker
...
[ 857235 ] task priority and other APIC bugs, etc
2005-11-28 22:19:01 +00:00
Stanislav Shwartsman
fe02ecab65
Do not flood log with WBINVD/INVD messages
2005-11-27 18:36:19 +00:00
Stanislav Shwartsman
8c91790680
Redefine registers accessors in cpu.h
...
Change BxSupportPAE and BxSupportGlobalPages macros to Bochs style names
Set bx_cpu_id in BX_CPU_C constructor (safe way)
Backup cpu-level check for paging features at compile time (already checked in configure)
Some warnings and indent fixes
speed up get_segment_base method for x86-64 case
2005-11-26 21:36:51 +00:00
Stanislav Shwartsman
49ed4e95a1
Fixed bug in set_id
2005-11-22 17:41:07 +00:00
Stanislav Shwartsman
e003620a30
In debug snapshot print flags in more ellegant way - use capital letters when flag is UP and lower letters when it DOWN
2005-11-21 22:29:02 +00:00
Stanislav Shwartsman
82dcab043f
Update TODO
2005-11-21 21:15:35 +00:00
Stanislav Shwartsman
9314752bb1
Rewritten task_switch mechnism according to AMD docs
...
This should fix the #SF bug report
736279 Jump to Task
2005-11-21 21:10:59 +00:00
Stanislav Shwartsman
8247b94245
Another fix for INIT/RESET state
2005-11-19 19:38:45 +00:00
Stanislav Shwartsman
ec81586bb8
Init/Reset values for LDTR/TR
2005-11-19 18:27:15 +00:00
Stanislav Shwartsman
8d9b5b7134
Fixed compilation error when PAE diasbled and BX_DEBUGGER enabled
...
CVS patch by shirokuma #SF 1359011
2005-11-17 17:52:00 +00:00
Stanislav Shwartsman
3250edb8c5
Update instrumentation
2005-11-14 18:25:41 +00:00
Stanislav Shwartsman
7b7ac565f9
Getting ready for long mode disasm support, patch will posted soon
2005-11-14 18:09:22 +00:00
Stanislav Shwartsman
e2a5b9c338
MOV to/from test register are UD in x86-64
2005-11-11 22:02:42 +00:00
Stanislav Shwartsman
cb4ec526ab
Fix comments and cleanup ...
...
No functional change
2005-11-11 21:34:57 +00:00
Stanislav Shwartsman
38a7e0abea
0f 0d (3dnow prefetch instruction) should execute as NOP when running on Intel EM64T CPU and as prefetch on AMD
2005-11-11 21:09:02 +00:00
Stanislav Shwartsman
0c6a401f30
Update CPU/TODO
2005-11-09 18:07:49 +00:00
Stanislav Shwartsman
e70aa1c403
Initialize l-biT (x86-64 mode) during reset or init
...
Do not modify segment limit and access rights when changing segment in real mode
2005-11-07 22:45:25 +00:00
Stanislav Shwartsman
5d67c7354f
Fix code duplication
2005-11-05 11:39:26 +00:00
Stanislav Shwartsman
cd2a9f317d
Do not PANIC when HLT with IF=0, only BX_INFO
2005-11-04 15:15:02 +00:00
Stanislav Shwartsman
ab81296e33
Update CHANGES/TODO
...
Change BX_INFO to BX_DEBUG in read CR4 function
2005-10-23 21:11:32 +00:00
Stanislav Shwartsman
732abe4b30
Move parity table from cpu.cc to lazy_flags.cc
2005-10-20 17:33:36 +00:00
Stanislav Shwartsman
64ba97210b
INVD/WBINVD should flush caches and TLB
2005-10-18 18:07:52 +00:00
Stanislav Shwartsman
670395f1be
VME support - beta #1
2005-10-17 13:06:09 +00:00
Stanislav Shwartsman
e83c77db49
Preparing to VME implementation
...
DO NOT ENABLE VME option until the implementation will be completed !
2005-10-16 23:13:19 +00:00
Stanislav Shwartsman
bf855506a3
Change set_FLAGS(0) by clear_FLAG ()
...
set_FLAGS(1) by assert_FLAG()
2005-10-15 21:01:36 +00:00
Stanislav Shwartsman
51347f2604
PAUSE instruction still should be implemented ...
2005-10-13 22:53:03 +00:00
Stanislav Shwartsman
7c1374a2ec
support lazy flags for SHRD instruction
2005-10-13 20:21:35 +00:00
Stanislav Shwartsman
7022be46f5
Fix undefined flags handling for ROR and RCR instructions
2005-10-13 19:28:10 +00:00