Commit Graph

2591 Commits

Author SHA1 Message Date
win2kgamer
9a5ec04ec5 Tandy Sensation II: After further research the Tandy 3100 and MMPC series have a different BIOS and some board differences so rename the machine to reflect this
Also add a new Cirrus 5428 device with a fixed 1MB VRAM config for this machine
2026-02-16 22:00:19 -06:00
Miran Grča
5b4b486afc Fix a MOV in vid_voodoo_codegen_x86-64.h that should have been an ADD 2026-02-17 00:29:30 +01:00
win2kgamer
4ea89bb216 Intel Monsoon: Give the machine a version of the Phoenix jumper device, fixes onboard video 2026-02-15 00:58:03 -06:00
win2kgamer
eb20365cec Cirrus: Give the Commodore SL386SX/25 its own 5402 device and make the original onboard device not load a VBIOS. Tandy 1000 RSX now loads the correct VBIOS from the system ROM. 2026-02-15 00:26:59 -06:00
win2kgamer
974e1127f7 Merge branch '86Box:master' into broken-sensation1 2026-02-11 21:08:46 -06:00
WNT50
e064caac73 Fix memory size report for IBM PS/2 model 30-286 2026-02-11 15:30:27 +08:00
WNT50
b636ed3b92 Add IBM PS/2 Model 30-286 rev. 0 BIOS 2026-02-11 15:23:15 +08:00
win2kgamer
160a9e45ba Add Tandy Sensation! II (25-1651)/3100/MMPC machine 2026-02-10 21:18:06 -06:00
Mike Swanson
0d1e900fb6 Add GUI settings for shared secret, remove switch groups
Two birds in one commit: with the introduction of shared secrets,
there is a practically-infinite amount of local switches that can be
used, by merely editing the shared secret string.  As such, support
for old switch groups has been removed.

In addition to this, the multicast address for local switch has been
altered to 239.255.80.86.  This ensures a hard compatibility break
with the previous code and old (albeit interim) builds of 86Box would
not attempt to receive packets with shared secrets.
2026-02-09 20:07:31 -08:00
win2kgamer
399508ea07 Merge branch '86Box:master' into broken-sensation1 2026-02-09 21:29:04 -06:00
Mike Swanson
f3d22bbef3 local switch: Implement shared-secret feature
This allows for a “shared secret” to be entered for a network switch,
segmenting traffic so that multiple people could use the feature
simultaneously without accidentally entering into or interfering with
each other's networks.

Takes a string specified in the configuration file (using the
net_%02i_secret key) and hashes it through SHA3-256 to prepend to each
data packet.  This hash is used to compare packets on reception and
allow or discard them.
2026-02-09 19:10:37 -08:00
win2kgamer
df50d0accb Merge branch '86Box:master' into t1000rsx 2026-02-08 15:18:52 -06:00
Miran Grča
efa6f48a45 Merge pull request #6788 from akmed772/master
Add IBM Multistation 5550 (1983) machine
2026-02-08 20:49:56 +01:00
Akamaki
ba1c24de18 Added IBM 5551-Bxx emulation 2026-02-09 01:43:44 +09:00
win2kgamer
191b00470c Merge branch '86Box:master' into t1000rsx 2026-02-07 19:51:47 -06:00
TC1995
284304ad35 Don't write on pixtrans reads (8514/A compatibles)
1. See above.
2. Reuse the 4k ROM with proper loading mechanism so that extended ATI modes can be used with the ATI 8514 Ultra 4k ROM (add-on).
3. Disable excess logging.
4. Apparently 8514/A bresenham line must always draw the last pixel unlike the vector lines, fixes missing pixels in some programs e.g.: calculator on Windows 3.x using 8514/A drivers.
2026-02-08 00:16:44 +01:00
Mike Swanson
eaa4c7063f SLiRP: Support for changing the network.
Since the default 10.0.2.0/24 (or 10.0.3.0... etc) address can
conflict with a LAN (as it does in my case), this feature now adds the
ability to set custom network prefixes in the configuration file.  I
believe this is an “advanced” usage feature (like port forwarding) and
should not be exposed in the GUI, therefore no GUI changes have been
made.

In the `[Network]` section of 86box.cfg, each of the four NICs can be
set to have a custom address like such:

```
net_01_addr = 10.80.88.0
net_02_addr = 10.82.86.0
net_03_addr = 10.84.86.0
net_04_addr = 10.85.86.0
```

The last octet of the address is effectively ignored and always set to
0 again when the configuration file is saved.  Only a /24 CIDR
(netmask 255.255.255.0) is supported.  IPv4 has three local-scope
ranges: 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0.  Finding a network
prefix within these that do not conflict with your real LAN should not
pose a problem.
2026-02-06 17:25:34 -08:00
Lili1228
c3094d022d ESC/P 2: Exact paper sizes, 1/36" margins 2026-02-06 22:32:46 +01:00
win2kgamer
66f9e0396f Add the Tandy 1000 RSX
Machine mostly works but IDE hard disks do not work yet
2026-02-04 20:40:07 -06:00
OBattler
a0e6566eb8 Add the ADD-X Normerel Xenon - original patch by Kotochi, plus my fixes. 2026-02-04 02:35:35 +01:00
Maxwell Scott
d7f011e85f Added Olivetti OEM BIOS to TriGem Como
The Olivetti OEM BIOS' date (06/05/99) is newer than the current one (01/18/99).

Until the actual voltage and multiplier bus speeds are found, I adjusted them to match other i440LX/EX machines. Also added a note about onboard video.
2026-02-02 20:04:32 +07:00
Lili1228
e7fee34332 ESC/P 2: 4 versions, filtering by version, selectable paper.
The four versions are:
- EX-1000 and 7 other early printers (including FX-80, the only Epson
  available OOTB for Windows 1.03), have ESC i and ESC j.
- 9-pin ESC/P, a superset of EX-1000 besides ESC i and ESC j.
- 24-pin ESC/P in 360 DPI instead of 240.
- ESC/P 2 with raster graphics.

As for paper, four sizes: Letter, A4, Legal, B4. The former ones are
mainly for EX-800, the latter two are sideways and meant for EX-1000.

I did some other minor changes, like converting a bunch of defines to enum.
2026-01-31 14:41:04 +01:00
win2kgamer
be38bee2c6 Merge branch '86Box:master' into broken-sensation1 2026-01-30 21:18:03 -06:00
OBattler
5a189d49c3 808x and Vx0: Fix the remaining multiple definitions. 2026-01-28 09:14:05 +01:00
Bozo Scum
715a6cf4cd makes Victor V86P BIOS versions selectable 2026-01-28 13:45:15 +08:00
Bozo Scum
2a00f72a6f VTech Laser Turbo XT: add older BIOS 1.08 2026-01-28 13:38:26 +08:00
OBattler
51e0e88329 More LPT device sanitization, un-dev-branch the Generic PCL printer, add language selection to it and the PostScript printer (including a Raw option), and translate the missing strings. 2026-01-27 09:40:53 +01:00
OBattler
9b7b92622b Restructure LPT devices so that lpt_device_t is now only used internally while the exposed LPT devices are now regular device_t's. 2026-01-27 06:47:08 +01:00
win2kgamer
3ce332794e Add a (currently broken) implementation of the Sensation 1 onboard audio
OPL3 is working, Windows 3.1 driver initializes correctly but the DAC fails to play back properly: only one set of samples plays back with silence after reloading the sample counter
2026-01-25 22:18:59 -06:00
win2kgamer
900be45698 Add the Tandy Sensation! 1 (25-1650) machine 2026-01-25 22:11:53 -06:00
Dmitry Borisov
ca37758018 nmc93cxx: Rewrite the nmc93cxx emulation
This patch rewrites the nmc93cxx emulation code.
The primary aim of the rewrite is to fix the Qlogic 1080 BIOS v1.11 flashing feature
(the card utilizes a 93C56 chip in 128x16 mode).

This work is derived from the MAME serial EEPROM emulation code
written by Aaron Giles and published under BSD-3-Clause license.
https://github.com/mamedev/mame/blob/master/src/devices/machine/eepromser.cpp

The code is modelled on the MAME code with the following differences:
- Removed support for the ER5911 and MSM16911 EEPROM devices.
- Removed support for the X24C44 NOVRAM device.
- Removed support for the Seiko S-29X90 EEPROM devices.

The 86Box changes:
- The nmc93cxx code now also supports EEPROM devices in 8-bit mode.
- Make the default_content parameter optional.
- Make the nmc93cxx_eeprom_data function to return a const pointer.
2026-01-25 11:21:15 +06:00
OBattler
570483a828 PCI: Make PCI configuration reads and writes length-aware and fix the DC390 PCI device ID AND'ing with EEPROM DO. 2026-01-25 11:21:14 +06:00
TC1995
b6adf1e5aa S3 and 8514/A compatible fixes for various stuff.
1. Correct some more clock bugs of the ELSA Winner NeXTSTEP/OPENSTEP third party driver (please report any regressions if possible on other stuff).
2. Line Vector command with flag 0x211x (r/w) is now more usable (not perfect yet) and fill brushes now have correct colors (but also not perfect either) in Windows 2.x' 8514/a drivers.
2026-01-23 01:05:04 +01:00
OBattler
8c18273b23 Added the MSI-5156 (most of the work done by Kotochi). 2026-01-22 19:10:00 +01:00
kotochi98
82a1f2908d Add the Intel Classic R/R Plus (Monsoon) machine 2026-01-18 14:27:05 +03:00
AITUS95
e414d9ab55 Voodoo: smooth V1/V2 sync and Windows waits
Make LFB relax/front-sync the default for V1/V2, keep wait stats opt-in, document sync behavior, and reduce Windows swap/event stalls.
2026-01-18 03:33:54 +01:00
OBattler
fb1f37c83b Added PIIX4 AMI 1995 NVR device. 2026-01-16 11:35:17 +01:00
Miran Grča
aed03781f6 Merge pull request #6714 from lemondrops/patch-28
Miscellaneous changes
2026-01-15 02:44:10 +01:00
Miran Grča
08c423baec Merge pull request #6713 from lemondrops/hdd
Fix HDD table formatting
2026-01-15 02:43:52 +01:00
Alexander Babikov
554b74a09d Translate device bus name separately from device name 2026-01-15 05:18:28 +05:00
Alexander Babikov
cee9e83736 HDD presets: rename version_ex field to version 2026-01-15 05:13:46 +05:00
Alexander Babikov
e8d473af23 Add keybind for fast forward 2026-01-15 05:13:29 +05:00
Alexander Babikov
987f11ecf2 Add keybinds for all screenshot commands (unset by default) 2026-01-15 05:13:23 +05:00
Maxwell Scott
857e5d99cc Sort out the sound card list
Also added the forgotten "(Video)" name to IBM PCjr configuration.
2026-01-14 16:57:11 +07:00
kotochi98
c4ba299d7f Add the MSI MS-6117 and its OEM/foreign language BIOS variants 2026-01-13 13:21:57 +03:00
Miran Grča
71cb6908f8 Merge pull request #6697 from Cacodemon345/trigem-como
Add TriGem Como 440EX machine
2026-01-12 11:22:42 +01:00
Cacodemon345
527fb269e2 Auto-load gm.dls on Windows if FluidSynth 2.5.0 or later is detected and no soundfont is specified
Windows builds should generally use it or later
2026-01-12 16:20:32 +06:00
Cacodemon345
85d902ef7a Add TriGem Como 440EX machine 2026-01-11 17:40:30 +06:00
OBattler
ca2a5a1e99 Remove excess logging. 2026-01-10 04:47:01 +01:00
OBattler
b857e809bf The actual code changes. 2026-01-10 02:25:25 +01:00