Commit graph

114 commits

Author SHA1 Message Date
FeralChild64
6c2badb7ca Cleanup country support, add historic locales 2023-12-05 07:42:55 +01:00
Antti Peltola
00dbcb22bd Update man page descriptions against actual CLI output 2023-10-27 11:52:40 -07:00
Antti Peltola
2d0fcb92cd Sync man page with CLI descriptions 2023-10-26 18:28:17 -07:00
John Novak
8eac1a62ad Update macOS build instructions 2023-10-24 15:45:21 +10:00
Torinde
5e3e2b43a7 Remove opencaptures 2023-10-06 11:20:07 +10:00
Antti Peltola
36c76e9d0e Update man page 2023-09-05 13:50:50 -07:00
kcgen
e6e4c5d68d Revert "Do not install outdated and unmaintained man page"
This reverts commit 693e040bdc.
2023-09-05 13:50:50 -07:00
FeralChild64
693e040bdc Do not install outdated and unmaintained man page 2023-09-05 08:10:00 -07:00
John Novak
202cef43f4 Update Visual Studio 2019 references in the doco to 2022 2023-09-03 18:30:14 +10:00
John Novak
9823e9ca8d Remove SDL2_image 2023-06-24 12:07:05 +10:00
kcgen
30ca4beedc Deprecate the vgaonly machine-type by mapping it to svga_paradise
Justification for mapping it to svga_paradise is that it
provides sufficient "early" VGA compatibly without
regressions or loss of functionality.

Thanks to Jon Campbell for this recommendation and
explanation, as follows:

---

For Staging's purposes, it would be better to map vgaonly to
one of the older SVGA chipsets that lack VBE extensions, like
Tseng or Paradise emulation. Those are close enough to plain
VGA.

Fair warning though, Tseng ET4000 cards map the chained
256-color mode to planar differently from normal VGA/SVGA
cards. It can matter depending how the game accesses video
memory. One issue on DOSBox-X pointed to some Chinese made
game that appeared to chained and unchained 256-color memory
access as needed in a way that needed the Tseng ET4000 cards,
and it's possible other games need the plain VGA mapping the
same.

Maybe vgaonly could be mapped to svga_paradise instead.

---

Test cases showing that vga_paradise is sufficent and without
harm include:

1) from Jonathan Campbell:

   I know of a good test case, "Get Saddam" as seen on
   Shovelware Diggers that, despite supporting CGA or VGA
   graphics, uses a graphics library that will crash if
   VESA BIOS extensions are present. The technical
   explanation is the library was obviously written
   around really old VESA BIOS extensions that wrote the
   mode information into the buffer without zeroing all
   128 or 256 bytes of the structure. It doesn't allocate
   enough space on the stack for the full structure, so
   more modern code and DOSBox/DOSBox-X that does write
   all 256 bytes causes stack corruption and the game
   crashes. Notice when Shovelware Diggers covers it,
   he's using the CGA mode because the VGA option
   probably reliably crashed when he tried.

2) from NickNine:

   The Need for Speed (original not SE) makes two batch
   scripts NFS.BAT with NFSVESA.BAT with the second one
   calling univbe before running the game

   - under vgaonly it predictably does not run with
     either bat since there's no VESA support at all.

   - under svga_paradise it does not run from nfs.bat
     but does run from nfsvesa.bat.

Thank you for this testing help, NickNine!

---

In the event svga_paradise's set of
SVGA-detectable-features causes regressions in some
games or software, then additional handling would be
needed to re-instate vgaonly as strictly that - simply
a non-SVGA card, as Jonathan Campbell (once again!) explains:

   Perhaps machine=vgaonly could just be Paradise emulation
   but with any extended registers blocked off so DOS games
   can't detect it. Here's a collection of documentation on
   what Paradise cards have in their registers for your

   reference: http://hackipedia.org/browse.cgi/Computer/Platform/PC%2c%20IBM%20compatible/Video/VGA/SVGA/Paradise

   Paradise cards are close enough to VGA that if you
   prevent DOS games from detecting the SVGA chipset it
   should be a good enough substitute for vgaonly. In
   fact according to documentation at that URL there are
   registers you have to write magic values to them to
   "unlock" the extended registers. So then for
   machine=vgaonly just don't allow the guest to unlock
   those extended registers and remove any signature from
   the VGA BIOS that might suggest Paradise/Western
   Digital SVGA.

Thank you, Jonathan Campbell, for all the help -- both
in the current mapping decision and potential future
fix, if regressions due inface surface.

Co-authored-by: Jonathan Campbell <jonathan@castus.tv>
Co-authored-by: NicknineTheEagle <nik18.1995@gmail.com>
2023-04-19 12:36:34 -07:00
John Novak
d804cf05eb Revise the README template & include link to the new Getting Started guide 2023-03-24 13:11:08 +10:00
kcgen
685eb22d67 Add BSD build notes and dependencies
Also makes a couple minor compatibility fixes:

 - OpenBSD's thread name in Loguru

 - Update headers for the BSDs
2023-03-21 10:05:44 -07:00
Thomas Eric
81092948d8 Fix small typos on build-nix.md 2023-03-14 22:38:25 -07:00
Thomas Eric
5071223068
Add NixOS package listing and build docs 2023-03-14 21:42:11 -07:00
Torinde
c785afcbba Update docs with supported versions of Windows, macOS, and Linux (#2258)
Co-authored-by: John Novak <jnovak@johnnovak.net>
2023-02-13 13:03:38 +10:00
kcgen
ca989e62ad
Add a missing step in the MSYS2 build notes 2023-01-16 01:02:08 -08:00
John Novak
c05e875c39 Add a sane Markdown linter style and mass update all .md files to
conform to these rules
2023-01-06 18:57:45 +10:00
John Novak
9cb37741a1 Improve build instructions 2022-12-15 16:25:09 -08:00
kcgen
bdbd8935a7 Deprecate [render] frameskip 2022-12-11 06:42:21 -08:00
kcgen
0492b041c6 Organize ReelMagic as a sub-module under hardware
src/hardware/reelmagic/driver.cpp
src/hardware/reelmagic/mpeg_decoder.h
src/hardware/reelmagic/player.cpp
src/hardware/reelmagic/vga_passthrough.h
src/hardware/reelmagic/video_mixer.cpp

src/hardware/reelmagic/docs/...
src/hardware/reelmagic/tools/...

This matches the other multi-component modules that have
their own subdirectory like: mame, mouse, and serialport.

This allows for dropping the redundant filename prefixes, and
simply call the component-code was they represent within the
Reel Magic design.

It also co-locates the tools and documentation, and makes
small modifications to reflect the new paths and names.
2022-11-15 11:48:17 -08:00
kcgen
b83f8877b8 Let ReelMagic be configurable at runtime
The RealMagic support can now be toggled off and on during
runtime with tear-down of all active resources (the driver,
callbacks, interrupt handler, VGA mixing, and audio channel)

Add shutdown/destroy routines to the initialization phase.

Also simplifies the set of configurable items down to just
the on/off states, key, and frame-rate code.

The other settings were mostly for debugging and testing,
and these values already exist as static-globals within the
reelmagic code - so developers can continue to tweak and test
those at compile-time.
2022-11-15 11:48:17 -08:00
kcgen
1d78e1598b Move the ReelMagic markdown notes under docs 2022-11-15 11:48:17 -08:00
kcgen
1f3889bd5e Format the resources document as markdown 2022-09-26 07:15:56 -07:00
kcgen
0df1c885a3 Include the resource tree in the meson install action 2022-09-23 16:34:35 -07:00
Wengier
963e5de72e Modifies the README template to support release packages 2022-09-11 13:45:09 -07:00
kcgen
687301bb0a Prioritize release builds using wraps
The majority of people building Staging want release builds without
complications due to system libraries.  This includes users on windows
using MSYS2, Raspberry Pi users (via RetroPie), macOS users, and Linux
users with OSes that might be very new or slightly out-of-date.

Packagers can configure meson to use shared libraries and not fallback
to wraps, and additionally ask to have specific libraries provided
from the system using -Duse_system_libs=lib1,lib2, instead of wraps.
2022-08-05 19:07:51 -07:00
shermp
fdbf8ab92b Update msvc build documentation 2022-06-13 16:44:50 -07:00
kcgen
db19ccb18f Add SpeexDSP to a couple more lists 2022-05-21 19:50:08 -07:00
John Novak
2eae4273b4 Replace linear-interpolation resampler with SpeeX 2022-05-21 19:50:08 -07:00
kcgen
6bb598e801 Add --list-glshaders command line flags 2022-05-09 18:17:08 -07:00
John Novak
1a81738d48 Update MacPorts dependency names 2022-05-07 15:08:37 -07:00
kcgen
c10ef19d48 Describe the resources directory in a README document 2022-03-31 17:20:39 -07:00
kcgen
c8ccfcf2fa Remove FluidSynth as a brew dependency: use the wrap
Thanks to @PatTheMav for the suggestion: "As for the
Homebrew issue, it might make sense to remove that
requirement from the macOS docs then as the package
seems only intended for use as a dylib."
2022-02-25 19:50:24 -08:00
Wengier
45b0e23246 Address PR feedback as suggested 2022-02-17 23:09:24 -08:00
Wengier
2046b258a7 Add/restore documentation for SDL CD support 2022-02-17 23:09:24 -08:00
kcgen
0efd3dae12 Refer to the MSY2 install notes in the sanitizer instructions 2022-01-31 16:57:43 -08:00
Sherman Perry
528caea358 Shorten lines 2021-12-17 20:16:34 -08:00
Sherman Perry
00bfb8143b Wiki: update MSYS2 build instructions
Updates the MSYS2 build instructions to be a closer match for the setup in CI.
2021-12-17 20:16:34 -08:00
Jookia
f01091b7c3 Add libslirp build documentation 2021-12-13 09:41:32 -08:00
Christer Solskogen
5149a0c6d0
Fix typo in man-page regarding cycle adjustment 2021-11-05 13:46:54 -07:00
kcgen
949395dbad Expand macOS build instructions
- Mention system-update to install xcode
 - Add python3, pkg-config, and cmake as related tools
     Staging itself doesn't depend on these, but Meson uses pkg-config and cmake)
     To work with Staging sources, we have many helpful python3 scripts
 - Add notes about giving the terminal permissions
2021-10-26 19:47:01 -07:00
kcgen
38f648069f Move loguru from submodule to src/libs 2021-10-03 11:52:46 -07:00
kcgen
35a13d621c Refer to main branch in VC redist text file 2021-09-30 23:03:01 -07:00
kcgen
e9bb9a6df5 Add notes about cloning with submodules 2021-08-25 21:01:28 -07:00
Patryk Obara
ba212a562c Merge 'svn/trunk' r4452 2021-05-04 23:15:36 +02:00
kcgen
b3acc39b04 Document how to build a debugger-enabled binary in Visual Studio 2021-05-04 02:54:59 +02:00
Patryk Obara
8bf4e8107b Use consistent style for key names
Various places in code used mix of uppercase and lowercase typography
for describing key combinations. Replace all those style with consistent
convention:

- Key names are always capitalized: Alt, Ctrl, Shift, Cmd, …
- Key combinations are connected with '+': Alt+F1
2021-03-06 22:21:25 +01:00
Feignint
c8b84e41a4 Fix spelling in various documents
Summary of spelling fixes:

    BUILD.md: depedencies => dependencies
    CONTRIBUTING.md: occassionally => occasionally
    README: wether => whether
    README: Realtive => Relative
    contrb/README.md: absense => absence
    CONTRIBUTING.md: reformating => reformatting

Also includes capitalisation fixes:

    README: russian => Russian
    README: french => French
    contrib/icons/icons.md: Gnome => GNOME
2021-02-23 13:38:02 +01:00
Patryk Obara
2f73b726e0 Remove Autotools-based buildsystem
Meson is fully operational, old buildsystem is not (on this branch).

Remove following files:

- .gitignore files that we needed to support clean in-tree builds
- all automake files in all subdirectories
- m4 macros
- Autoconf-specific documentation for tests
- configure.ac, autogen.sh, and other Autotools-related files

Few .gitignore files were adjusted, as they had entries unrelated
to Autotools.
2021-02-20 22:51:19 +01:00