Anonymous user
Bochs: Difference between revisions
Jump to navigation
Jump to search
m
no edit summary
[unchecked revision] | [unchecked revision] |
mNo edit summary |
mNo edit summary |
||
Line 97:
Some useful macros when Bochs is compiled with the I/O debug ports enabled (<tt>port_e9_hack: enabled=1</tt> if Bochs 2.4 or newer, <tt>configure --port-e9-hack</tt> if not):
<source lang="c">
//outputs a character to the debug console
#define BochsConsolePrintChar(c) outportb(0xe9, c)
//stops simulation and breaks into the debug console
#define BochsBreak() outportw(0x8A00,0x8A00); outportw(0x8A00,0x08AE0);
</source>
===Magic Breakpoint===
Line 126 ⟶ 128:
Bochs has many compile-time configuration options, some of which conflict, and therefore a binary distribution of Bochs may not be suitable for your purposes. I found it was best to compile my own copy of Bochs to be sure I had the features that I needed. Also, you should consider using the CVS snapshot version of Bochs if the released version is old and not working for you. I found this was necessary up until version 2.4 was released, for example. On Ubuntu, you may have to run
<source lang="bash">
sudo apt-get install libgtk2.0-dev
</source>
and enter your password. On other linux distros, try the equivalent.
Line 132 ⟶ 136:
The array of Bochs configuration options can be confusing, and you cannot assume the defaults are going to be sensible. These are the options I use, this can get you started:
<source lang="bash">
./configure --enable-smp \
--enable-cpu-level=6 \
Line 151 ⟶ 156:
--disable-docbook \
--with-x --with-x11 --with-term
</source>
A few notes:
|