Commit Graph

748 Commits

Author SHA1 Message Date
Stanislav Shwartsman
80019a34c0 Support for disabling of one of more CPU feature from CPUID configuration (see "exclude_features" in bochsrc sample and documentation) 2024-10-24 20:48:53 +03:00
Volker Ruppert
919abc8dec Documentation update after USB debugger option changes. 2024-06-21 17:50:04 +02:00
Volker Ruppert
3be49b57f7 Added some missing changes after updating LGPL'd VGABIOS. 2024-06-10 22:14:01 +02:00
Volker Ruppert
dcc794a7d3 LGPL'd VGABIOS updated to version 0.9b (several VBE bugfixes).
Now using ".bin" file extension for all VGABIOS images.
2024-06-09 16:27:18 +02:00
simoc
e7e76cfb5c
Minor grammar improvements in README and user.dbk documentation (#323)
Minor improvements to English grammar in documentation files.
2024-05-30 19:07:40 +02:00
Volker Ruppert
44d644c2c2 Some more user doc updates and updating Bochs website URL. 2024-03-26 19:36:12 +01:00
Volker Ruppert
9daf6e9f50 Updated most of the user doc after transition to GIT / GitHub. 2024-03-25 17:53:04 +01:00
Volker Ruppert
78c5b21313 Some NSIS script additions and developer doc updates. 2024-03-24 16:51:56 +01:00
Volker Ruppert
4b0c9a711f Continued work on developer docs. 2024-03-15 14:39:48 +01:00
Volker Ruppert
667e885b2e Started updating the documentation after transition to GIT.
- Website repository is now GIT, but still hosted on SF.
- Creating SVN snapshot section is now obsolete.
- Prepared Makefile for compiling outside of the source tree.
2024-03-12 19:11:04 +01:00
Benjamin David Lunt
557976bee1
Initial start of the USB Debugger (#165)
This is the start of the Experimental USB Debugger (currently for the
Windows platform only).

Currently only supports the UHCI and xHCI controllers. The remaining
function of these two controllers and the two remaining controllers are
in the works and will be added to when time allows.

The User.dbk has been updated with (temporary) html files at
https://www.fysnet.net/bochs/user/index.html showing the process to
invoke and use the USB debugger (Section 5.8).

In its completion, this debugger will allow you to view and modify most
aspects of the specified USB controller. For example, currently you can
view and modify a TRB listed in the xHCI's Command or Event Ring. Other
aspects will be added.

I do not use and am not fluent in the use of `configure`,
`configure.ac`, and associated configuration files. I also don't use the
`gui/Makefile.in` file.

Someone that is more fluent in the way these files work, please add the
necessary items to successfully compile this PR.

---------

Co-authored-by: Shwartsman <stanislav.shwartsman@intel.com>
2024-03-10 13:05:41 +02:00
Volker Ruppert
9177c93e4e Preparing Bochs release 2.8. 2024-03-10 07:59:37 +01:00
Volker Ruppert
ab32c8a2bb Update CHANGES and 'vga: update_freq' in docs. 2024-01-20 10:59:34 +01:00
Volker Ruppert
71d9b7e720 Documentation updates. 2024-01-12 16:12:26 +01:00
Stanislav Shwartsman
3a02e85599
AMX support (#212) 2024-01-10 20:13:25 +02:00
Volker Ruppert
c13ef56378 Increase maximum VGA update frequency to 75 and default to 10.
Small cleanups in the VGA code.
2024-01-07 11:15:04 +01:00
Volker Ruppert
1699f30d64 Reduce default keyboard serial delay to 150 to avoid timeouts.
Some cleanups in the keyboard code.
2023-12-31 10:47:10 +01:00
Volker Ruppert
29fbdb48da Set default value for SB16 dmatimer to 1000000 and updated docs. 2023-12-28 20:32:14 +01:00
Volker Ruppert
50258bf32e Improved Ne2k bootrom parameter description. 2023-12-14 23:01:11 +01:00
Volker Ruppert
bb477316f1 Some small bximage quiet mode changes.
- Show error message if a parameter is missing for quiet mode.
- Show defaults in help message.
- Added quiet mode example in manual page.
2023-12-10 11:17:21 +01:00
Volker Ruppert
0d49d2a8df Added 'flash_data' parameter to the romimage option.
This parameter defines the file name for the flash BIOS config space loaded
startup if existing and saved on exit if modified. The Bochs BIOS doesn't
use this feature yet. Updated 'romimage' option documentation.
2023-12-09 17:52:33 +01:00
Dreg
86eff7597d
add iodebug support for all rings complement #64 (#66)
This PR is for "I/O Interface to Bochs Debugger" from ring3 (port range:
**0x8A00 - 0x8A01**)

PR #64 was for E9 HACK (port **0xE9**)

By enabling the iodebug's 'all_rings' option, you can utilize the port
I/O Interface to Bochs Debugger from ring3. This PR allows the code
running inside Bochs (ring3) to monitor memory ranges, trace individual
instructions, and observe register values during execution.


https://bochs.sourceforge.io/doc/docbook/development/debugger-advanced.html

IMO very useful for:

- user-mode sandbox (ex Cuckoo)
- malware analysis
- API/SYSCALL hook/monitor from ring3
- automation + instrumentation from user mode code
...

A complement for PR #64

**This PR is 100% backward compatibility**

![IODEBUG ALL
RINGS](https://github.com/bochs-emu/Bochs/assets/9882181/6308ad0f-c189-43f3-a92b-dccde3542ad6)

btw, @stlintel I'm not certain about:
- if misc is the ideal location for this.. should I create a new
iodebug-option for this?
- should I remove the #if in 'new bx_param_bool_c'?
- the new .bochsrc entry makes sense for you?
2023-08-27 18:34:01 +02:00
Dreg
da43cc4580
add port e9 hack support for all rings (#64)
By enabling the 'all_rings' option, you can utilize the port e9 hack
from ring3

IMO very useful for:
- user-mode sandbox (ex Cuckoo)
- malware analysis
- API/SYSCALL logger with a simple hook from ring3
- automation + instrumentation from user mode code
- ...

So yes, from this PR a user-mode-sandbox can display on the console of
the system running Bochs anything that is written to 0xE9 port


![porte9hackallrings](https://github.com/bochs-emu/Bochs/assets/9882181/ddbca3fa-729b-4a3e-95ad-078e44c7a17a)

**This PR is 100% backward compatibility**

btw, @stlintel I'm not certain if **bochs/config.cc** is the ideal
location to define **bool port_e9_hack_all_rings** (unmapped io/dev is
better?)
2023-08-26 18:37:55 +03:00
Dreg
244033e234
improvement of the magic breakpoints fix #55 (#58) 2023-08-20 18:21:16 +03:00
Benjamin David Lunt
fd02efa536
hid mouse improvements 2023-04-09 10:43:18 -07:00
Volker Ruppert
545a73ad56 Fixed generation of user documentation 2023-04-06 20:20:20 +02:00
Benjamin David Lunt
df257317f3
Updates to USBMSD/SCSI emulation 2023-03-31 18:35:28 -07:00
Benjamin David Lunt
64bb47b283
Add over-current signaling
This adds over-current signaling to the USBs four host controllers.
To signal an OC, use the runtime configuration and set the checkbox (GUI) or text config's parameter to 1.
This pull request also adds USB documentation to user.dbk.
2023-03-22 16:13:25 -07:00
Benjamin David Lunt
280fbf1929
Added info about the USB disk/cdrom options 2023-03-12 14:58:12 -07:00
Dreg
b0173eaac5 Fix dbgdoc user.dbk broken with PR #12 2022-09-19 04:29:19 +02:00
Dreg
d514779177 add dbghelp for source, bt and print-string commands 2022-09-12 10:53:39 +02:00
Satoshi Tanda
c52dc25c26 add missing CPU model names 2022-08-26 20:40:53 -07:00
Satoshi Tanda
223b1d923c remove trailing spaces 2022-08-26 20:40:16 -07:00
Dreg
acfa7399e1
dereference expression and command for dbg (#38)
* dereference expression and command for dbg

* doc updated for deref and $ operator
2022-08-23 23:37:30 +03:00
Stanislav Shwartsman
f82270013d update user docs for internal debugger 2022-08-23 21:33:20 +03:00
Volker Ruppert
92622f16b9 Updated / improved information about configure shortcut scripts. 2021-11-04 17:44:57 +00:00
Volker Ruppert
7356cbce4d Updated developer doc: the legacy disassembler has been removed. 2021-10-25 15:51:36 +00:00
Volker Ruppert
eef679a8a4 Some documentation fixes. 2021-10-18 19:31:16 +00:00
Volker Ruppert
fbb7e29154 Updates after release. 2021-08-01 21:44:37 +00:00
Volker Ruppert
0a956e2cf1 Fixed two external links. 2021-08-01 07:40:18 +00:00
Volker Ruppert
caf52aacac Added advanced PCI option 'noagp' for the i440BX chipset.
Since AGP support is incomplete, it may be useful to disable this subsystem.
2021-06-27 14:50:26 +00:00
Volker Ruppert
06894e5b5e Updates after pre-release, partly updated Bochs URL usage. 2021-06-13 08:02:33 +00:00
Volker Ruppert
28b280c4bc Added display library option for disabling the Bochs gui console - using system
console / xterm instead (rfb, sdl, sdl2, vncsrv, x).
2021-06-11 14:46:38 +00:00
Volker Ruppert
d0fef2e502 Mention the gui console in the description for the textconfig interface. 2021-06-07 15:41:38 +00:00
Volker Ruppert
6422fe32b6 Documentation updates (e.g. improved gui debugger section).
File docs-html/enh_dbg_user_man.txt no longer needed.
2021-06-05 20:00:12 +00:00
Volker Ruppert
0dd9d7b33e Removed README.rfb and upated RFB info user documentation. 2021-06-05 11:32:51 +00:00
Volker Ruppert
887b232c95 Updated documentation after adding Banshee version of the LGPL'd VGABIOS. 2021-05-25 19:41:43 +00:00
Volker Ruppert
d53a068c5e Some updates after adding USB packet logging support in PCAP format.
- Updated MSVC workspace files.
- Documentation updates.
2021-04-18 15:26:26 +00:00
Volker Ruppert
8e8414aae4 Some cleanup in the plugins code and related documentation additions. 2021-04-01 19:36:59 +00:00
Volker Ruppert
3fcc320897 Added new plugin type PLUGTYPE_CI for config interfaces. Updated related code
and documentation.
2021-03-27 17:23:31 +00:00