Volker Ruppert
887b232c95
Updated documentation after adding Banshee version of the LGPL'd VGABIOS.
2021-05-25 19:41:43 +00:00
Volker Ruppert
1d4b8ee46c
LGPL'd VGABIOS updated from SVN.
...
- Banshee: added missing palette loading for 8-bpp modes.
- Banshee VBE: added save/restore Banshee state function.
- Code optimizations: some VGA functions rewritten in assembler.
2021-05-25 18:10:03 +00:00
Stanislav Shwartsman
097c8f13b9
minor coding style modifications
2021-05-25 06:27:49 +00:00
Volker Ruppert
431b3215fd
LGPL'd VGABIOS updated from SVN.
...
- Bochs VBE: enable 32k bank granularity mode.
- Fixed general 'scroll down' bug in graphics modes.
- Code optimizations: some VBE and VGA functions rewritten in assembler.
2021-05-24 06:48:40 +00:00
Volker Ruppert
8cbf4eff8e
Some changes for the Bochs VBE 32k bank granularity feature.
...
- VBE enable register returns 32k granularity flag if enabled.
- VBE bank register returns 32k granularity flag if VBE_DISPI_GETCAPS is set.
- Defining new DISPI ID not necessary.
- TODO: update VGABIOS to use this feature.
2021-05-23 06:30:51 +00:00
Stanislav Shwartsman
d9273a2414
merge type conversion patch from SF tracker #562 Fix type cast bug in bochs debugger by Xinyang Ge
2021-05-23 04:59:43 +00:00
Volker Ruppert
7ba54c951d
LGPL'd VGABIOS updated from SVN.
...
- Banshee: added 'write character' support for 8 bpp modes.
- Banshee / Cirrus: report TTY support for 8 bpp VBE modes.
- FIXME: Banshee scroll code works for 'scroll up' only.
- TODO: TTY support for the Bochs VBE adapter.
2021-05-22 16:24:28 +00:00
Volker Ruppert
43033b2137
Some changes for the Bochs VBE support.
...
- Limit VBE bank size to 64k as expected.
- Enabling VBE mode now clears the whole video memory for all bpp modes unless
"noclear" bit is set.
- Prepared 32k bank granularity mode required for text output functions. Added
new VBE_DISPI_ID6 to indicate this capability. The default is still 64k.
2021-05-21 20:49:34 +00:00
Volker Ruppert
f36ce19524
LGPL'd VGABIOS for Cirrus adapter updated from SVN.
...
- VBE: vbe_main_handler now checks the presence of the Bochs VBE support.
- Some fixes and code optimizations.
2021-05-20 18:59:20 +00:00
Volker Ruppert
3c8b0ce2b2
LGPL'd VGABIOS for Cirrus adapter updated from SVN.
...
- Cirrus mode 0x7B (1600x1200x8) now usable.
- Some related fixes and improvements.
2021-05-16 08:02:08 +00:00
Volker Ruppert
57ad842568
Some small Cirrus changes.
...
- Save/restore: fixed number of registers per controller.
- Report interlaced mode on mode switch.
- Added BX_DEBUG message for MCLK setting (unused).
2021-05-16 07:40:46 +00:00
Volker Ruppert
128e54a137
Some small Cirrus Video clock changes.
...
- Fixed reset values for VCLK and related sequencer registers.
- Added BX_ERROR for unimplemented feature (using MCLK as VCLK).
2021-05-15 16:15:59 +00:00
Volker Ruppert
8e68dfbef1
LGPL'd VGABIOS updated from SVN.
...
- Fixed Banshee VBE modes with LFB support enabled.
- Fixed 'write character' support for Cirrus 8-bpp VBE modes.
2021-05-14 17:09:05 +00:00
Volker Ruppert
bf76a6a9ef
LGPL'd VGABIOS updated from SVN.
...
- VGA restore state code now completely rewritten in assembler.
- Added some Banshee 24-bpp modes.
- Added Banshee VBE function AX=0x4f15.
2021-05-13 18:22:06 +00:00
Volker Ruppert
aa9045b63f
Set EDID checksum in constructor.
2021-05-13 17:58:57 +00:00
Volker Ruppert
18c8c4bd76
LGPL'd VGABIOS updated from SVN.
...
- Fixed XOR bug in write_gfx_char_pl4 function.
- VGA restore state code partly rewritten in assembler.
- Added some Banshee 16-bpp modes.
- Added Banshee VBE functions AX=0x4f06 and AX=0x4f07.
2021-05-11 19:42:13 +00:00
Volker Ruppert
95dc1b2012
Skip display update if a mode update is in progress.
2021-05-11 15:00:58 +00:00
Volker Ruppert
4db9f76819
Added port 0xE9 hack switch to runtime options.
2021-05-11 14:42:31 +00:00
Volker Ruppert
4f906524de
Banshee VGABIOS: added minimal VBE support for some 8-bpp modes.
2021-05-07 19:32:37 +00:00
Volker Ruppert
73b4429091
Banshee VGABIOS: fixed infinite loop in case Banshee is not detected.
2021-05-02 08:37:11 +00:00
Volker Ruppert
7b8f97b448
Updated LGPL'd VGABIOS from SVN.
...
- Added 'write character' support for Cirrus 8-bpp modes using bitblt engine.
- Some code optimizations.
2021-04-30 21:00:40 +00:00
Stanislav Shwartsman
e4b2079109
fixed compilation in x86-64 off mode
2021-04-29 04:18:33 +00:00
Stanislav Shwartsman
d112ab9943
fixed compilation
2021-04-28 17:57:57 +00:00
Stanislav Shwartsman
f174ce2b6f
SMM enter: never turn off EFER.SVME
2021-04-27 09:33:46 +00:00
Stanislav Shwartsman
2d2ec5e0aa
hack to W/A NX paging fault under nested paging while virtualizing SMM under SVM
2021-04-27 08:22:45 +00:00
Stanislav Shwartsman
79d6a16e3b
intercept SMI support in SVM
2021-04-27 08:22:04 +00:00
Volker Ruppert
6781067b55
Don't increment number of status items before comparing with maximum.
...
Fixes segfault when connecting an USB disk and all of the 10 slots are in use.
2021-04-23 20:08:12 +00:00
Volker Ruppert
77cc12cce5
Added support for reading VGA latches using CRTC register 0x22 (undocumented
...
for original VGA, documented for Cirrus and Voodoo Banshee).
2021-04-23 06:42:52 +00:00
Stanislav Shwartsman
4e41530b8a
SVM: Fixed EXITINFO error code after nested page fault (prevented Hyper-V from running)
2021-04-22 11:12:26 +00:00
Volker Ruppert
adf209fe9e
Fixed some issues reported by valgrind.
2021-04-18 17:20:41 +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
b19a7b1042
Added USB packet logging support in PCAP format (patch #560 by Ben Lunt).
...
- Added new files with small changes, output can be viewed with Wireshark.
- FIXME: Windows ports crash with original Win98 guest and USB disk connected.
- TODO: mention new feature in documentation.
2021-04-17 18:57:05 +00:00
Volker Ruppert
719592e2f3
Fixed device connect failure handling in all HCs (reset port parameters).
...
The old code has blocked the port after failure.
2021-04-17 17:48:42 +00:00
Volker Ruppert
30e24fa3d5
Prepared USB packet logging support in PCAP format (patch #560 by Ben Lunt).
...
- DONE: config option handling, usb_dump_packet() changes
- TODO: add new file after compiling and testing new code on Windows
2021-04-17 09:30:58 +00:00
Volker Ruppert
6d5897217c
Added missing PEL mask support in the VGA core.
2021-04-17 08:42:03 +00:00
Volker Ruppert
049826aa32
Fixed possible segfault in case of invalid filename based on patch #559 .
...
Since this save/restore list exists in all devices, it's safe to move the new
code to the usb_device_c destructor.
2021-04-13 11:56:41 +00:00
Volker Ruppert
d74210b93f
Added missing new VGABIOS binary for Banshee.
2021-04-12 19:37:17 +00:00
Volker Ruppert
faa11624e0
Updated LGPL'd VGABIOS from SVN.
...
- Added initial version of the VGABIOS for Voodoo Banshee adapters.
- Several code optimizations to reduce binary size.
NOTE #1 : Banshee version has no VBE support yet.
NOTE #2 : Banshee binary uses PCI ID for Banshee PCI and Bochs temporarily
modifies the PCI data for Voodoo3 and AGP models.
2021-04-12 19:35:37 +00:00
Volker Ruppert
69695bfd67
Prepared the Banshee code for the planned LGPL'd VGABIOS with 3dfx Voodoo
...
support. The VGABIOS image will be compiled for Banshee PCI and this code
modifies the PCI data for the Voodoo3 and AGP models.
2021-04-11 20:09:43 +00:00
Volker Ruppert
e9eccadb82
Recompiled binaries.
2021-04-09 06:47:35 +00:00
Volker Ruppert
59a3b3f8b3
Added helper function get_ebda_seg() to optimize code.
2021-04-09 06:45:42 +00:00
Volker Ruppert
7aa5eb7a51
Some changes for correct vertical frequency reporting on mode switch.
...
- vgacore: method get_crtc_params() now returns selected video clock value.
- banshee: now using selected video clock instead of hardcoded VCLK #3 .
- cirrus: added vertical frequency to mode switch BX_INFO.
2021-04-07 06:31:25 +00:00
Volker Ruppert
7aea547b9f
Fixed possible segfault on some platforms. We need 'count + 4' device entries,
...
one for the "none" entry and a terminating NULL entry.
2021-04-05 11:17:20 +00:00
Volker Ruppert
857c3be2ba
Some work on the Voodoo Banshee code.
...
- Moved setup of default i/o register values to reset().
- Set up strapInfo register bits in init().
- Don't overwrite readonly bits in miscInit1 register.
- Set up subsystem ID in VGABIOS ROM in case it's > 32k (doesn't exist yet).
- Copy subsystem ID from ROM to PCI config registers in reset().
2021-04-04 19:00:29 +00:00
Volker Ruppert
d8b25c5f26
Some more cleanup in the plugins code.
2021-04-03 18:26:03 +00:00
Volker Ruppert
7b355cd399
Get rid of the code duplication in the PIC write handler.
2021-04-03 16:44:19 +00:00
Volker Ruppert
7d104ffceb
Fixed setting up advanced PCI options.
2021-04-03 12:54:25 +00:00
Volker Ruppert
e411667942
Started reducing PIC code duplication and some cleanups.
2021-04-02 19:01:37 +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
5406c037ec
Improved example script for cross compiling Bochs on Linux for Windows.
...
- Disable the readline library since it's not present by default.
- Added support for adding config options with variable CONFIGURE_ARGS.
2021-03-29 11:39:24 +00:00