* Fix up global variable definitions in ibm.h
This fixes multiple definition errors when including ibm.h in C++ code.
* viewers: Add viewer infrastructure
Viewers are windows showing the status of a particular component of the emulated
machine; primarily for amusement, though may be useful for debugging in some
situations. This commit adds the basic infrastructure for viewers.
* viewers: Add (S)VGA palette viewers
This adds two basic viewers for the (S)VGA palette; one for the 16-entry
attribute controller palette, and one for the 256-entry RAMDAC palette.
* viewers: Add (S)VGA font viewer
Add a simple viewer to display the current (S)VGA font.
* viewers: Add (S)VGA video memory viewer
Add a viewer for (S)VGA video memory. This allows viewing of on and off screen
video memory in the various supported bitmap formats.
* viewers: Add 3DFX viewer
Add a viewer for 3DFX state. This shows all triangles and textures involved in
the most recent frame, and allows showing of framebuffer, depth buffer, and
wireframes.
It currently does not work properly in SLI configurations (only the first card
will be viewed) and trilinear textures will not display correctly.
* add initial support for GRiD GRiDcase 1520
* add emulation of IDE HDD model
Certain BIOSes like GRiD 1520 can only work with a limited selection of IDE hard
drives.
Add capability to emulate particular HDD model.
Add 3 Conner drives that work with GRiD 1520.
* Add ability to remove memory mapping.
* Add ability to remove ROM.
* Fix MDA use-after-free.
* Fix IBM PC Fixed Disk Adapter use-after-free.
---------
Co-authored-by: Marek Knápek <knapek.mar@gmail.com>
* Rename global variable, so it doesn't look like a macro.
* Replace macro with global variable.
* Get rid of VLA in adlibgold.
* Get rid of VLA in dbopl.
* Get rid of VLA in soundopenal.
* Get rid of VLA in voodoo banshee.
* Get rid of VLA in voodoo display.
Since we don't flush the messages to file immediately to avoid slowdowns, sometimes the application is closed before all the messages are written to the log.
This includes flushing the log when stopping the emulation, and tries to close the log file when closing the application. (It might need some more work to close it in all cases).
Also, some redundancy in logging.c and x86seg.c has been removed.
Moved the plugin extension arrays into plugin.c and init functions there.
Moved most code back into pcem binary instead of library as this isn't needed
Printer support is still only enabled if enabled from experimental
Added configuration options to LPT devices
Converted lpt_device_t to be like device_t with the lpt additions added.
* Moved NVR files out to be in just nvr, and will go in share/pcem/nvr
* Fixed#88. Now the headers use the internal name to make descriptive sense
* Fixed Spelling error on Hyundai
*Also changed some issues with automation, testing also ntldd for dependency copying
* Changed the static instances to a 256 sized pointer for video, model and sound so far.
* added <subsystem>_init_builtin to be called by pc_main to initialize builtin devices
* Moved device structs to a public header
* Removed autotools and converted over to CMake
* Updated README.md to mention build options for CMake
* Added ALSA Support to CMakeFile
* Fixed Workflows.
Forgot to remove the autoconf line for Linux and use "Unix Makefiles" on Windows
* Forgot some items to make Windows build correctly with CMake
* Final Fixes to allow workflows to work.
* Fixed C and C++ Flags for X86
Added arm and arm64 modes (untested)
* I had a moment, really should have made it in this file.
* Moved headers to include/private, and some other fixes
* Removed unneeded files and added NOTICE file
* Fixes an issue where on Windows this is needed
Dont understand why this wasn't an issue on Windows
before I moved headers outside src but whatever
* Fixed Missing Header