Commit Graph

1667 Commits

Author SHA1 Message Date
Cacodemon345
d51ba85814 TCP/IP support 2024-03-12 14:27:19 +06:00
Cacodemon345
10e0dbaafa Netsocket changes 2024-03-12 01:55:17 +06:00
Cacodemon345
9f5d2a46bd Platform-specific netwok sockets 2024-03-11 16:35:57 +06:00
Cacodemon345
ec8b8f2a92 Somewhat finish initial modem emulation 2024-03-09 01:37:13 +06:00
Cacodemon345
9488078c5a Work-In-Progress modem emulation 2024-03-08 16:45:17 +06:00
Cacodemon345
6d1c91c8ce Add Vision Systems LBA Enhancer 2024-03-06 15:14:56 +06:00
OBattler
e2018775d5 Implement correct DSR behavior, fixes #3715. 2024-03-03 18:19:00 +01:00
TC1995
af786bec0a IDE changes (now for MCA).
Added McIDE (MCA IDE) controller for MCA machines that don't have it (PS/2 models 50+).
2024-03-01 22:54:31 +01:00
Alexander Babikov
f9ae162e5d Move the EMU8000 ROM path to a macro 2024-03-01 22:35:52 +05:00
OBattler
e0d80aefb4 Moved OPL2 and OPL3 to a new 49716 Hz source so resampling is no longer needed, also fixed SB OPL and PC Speaker filtering (OPL was being downsampled to the selected DSP sample rate, which is incorrect, and the PC Speaker filter was using the wrong filter index in some liens). 2024-03-01 06:52:48 +01:00
OBattler
f6c66248e0 Moved the FDC FIFO implementation to fifo.c/h, fixes a few length masking bugs in fifo.c, and fixed FDC MSR register RQM bit behavior in DMA mode, which makes 386BSD work, fixes #530. 2024-02-25 08:13:45 +01:00
rilysh
1dfb6fd111 bswap.h: fix GCC requirements for bswap* builtins
1. __builtin_bswap{32,64} were added in GCC 4.3, and __builtin_bswap16
was added in GCC 4.8, however, currently, the GCC requirements in
bswap.h file has >= 10. This requirement of GCC version is false for
bswap* but true for __has_builtin() (as it first was added in GCC 10.1).
As bswap* builtins were added before GCC 10, the preprocessor check will
always going to be true for bswap but will be false if GCC version is
< 10 as __has_builtin() won't be present. Since the byteswap function,
on x86-64, can boil down to a single bswap instruction, this optimization
may left behind (unless GCC do some pattern matching). To avoid this,
just use the compiler macros (for GCC: __GNUC__, clang: __GNUC__ or
__clang__) and if the compiler is neither GCC or Clang, fall-back to
native implementation.

2. Remove the useless casts (uint{16,32,64}_t) from the constants. These
constants already has their own suffix, and casting to a different type
will just get ignored as the return value already gets casts to it's
appropriate type.

3. Previously, Clang couldn't able to use __builtin_bswap* (even if it was
newer) as LLVM define __GNUC__ macro to a specific constant (usually lower
than GCC's (__GNUC__) and on my system it's 4) which is indeed < 10. The
first comment also fixes this issue.

Link: <https://gcc.gnu.org/onlinedocs/gcc-4.3.0/gcc/Other-Builtins.html>
Link: <https://gcc.gnu.org/onlinedocs/gcc-4.8.0/gcc/Other-Builtins.html>
Link: <https://libc-alpha.sourceware.narkive.com/PfaB4BGP/patch-byteswap-h-fix-gcc-ver-test-for-builtin-bswap32>
2024-02-24 23:19:32 +05:30
OBattler
4ee4e8f2b7 Fixed the flags and classification of some SiS machines, closes #4192. 2024-02-23 06:41:02 +01:00
OBattler
8cf8ccf3b3 Added the STB PowerGraph 64 Video (S3 Trio64V+ VLB). 2024-02-22 01:08:21 +01:00
OBattler
58a0c840c1 Added SiS 550x, 558x, 559x, (5)600, UMC UM8890, UMC UM8663 Super I/O Chips, UMC UM8673F and Winbond W83769F IDE Contollers, and a number of machines, and fixes to the UM888x 486 chipset. 2024-02-22 00:52:20 +01:00
cartifanwlr
fc63c26e04 Merge network device headers to network.h 2024-02-18 20:02:01 +03:00
Alexander Babikov
643979c0b7 Merge joystick_*.h into gameport.h
Just like it was done to all headers with only device declarations years ago
2024-02-18 19:31:39 +05:00
Alexander Babikov
c74ad5b4da Joystick: Increase the maximum number of supported axes to 16 2024-02-18 19:31:38 +05:00
Alexander Babikov
e51f99c800 Joystick: Replace magic numbers for maximum axes/buttons/POVs with macros 2024-02-18 18:29:31 +05:00
Alexander Babikov
d789292f65 Joystick: Remove the leftover separate slider handling 2024-02-18 17:31:03 +05:00
TC1995
e9f0af21a0 MGA updates for the vram detection and stuff.
1. The Debian issue mystery lies around chain2_read/write being required when the LFB mapping is enabled too when MGA modes are set without blitting, however, when it is blitting, immediately tell chain2 to not interfere with the mapping. Fixes Debian once and for all as well as VRAM detection correctly while keeping existing compatibility fine.
2. Undev branch the G100 per above. (Revert if more bugs are revealed).
3. An AND with 0 is not tolerable as it nulls the LFB, fixes hang ups with Win2000 using the Millennium II and possibly the G100.
4. the Extended CRTCs now have a call for timing recalculation, fixes mode changes when blitting is going on.
2024-02-15 23:10:05 +01:00
TC1995
0240f11bbe Matrox MGA fixes:
1. When the 128K banking is activated, use a mask of 0xffff instead of 0x1ffff.
2. Debian uses standard VGA mapping when in chain4 mode and its lfb is adapted accordingly.
3. Fixed the decode VRAM mask on the Millennium II so that the vram is detected correctly and no more glitches.
4. Undev the Millennium II as well.
2024-02-14 17:05:28 +01:00
Alexander Babikov
0ecbc24763 Improve the OPL4-ML devbranching 2024-02-14 14:56:25 +05:00
Miran Grča
93017fc3b3 Merge pull request #4145 from Cacodemon345/c&t_69000
Chips & Technologies B69000 emulation
2024-02-13 23:17:33 +01:00
Alexander Babikov
0e53b86d25 Move the Matrox Millennium II and G100 to the Dev branch 2024-02-13 22:28:27 +05:00
Alexander Babikov
307e15019e Remove a long-unused string 2024-02-13 21:41:01 +05:00
Alexander Babikov
224daa92d0 qt: Remove fullscreen status icons 2024-02-13 21:13:25 +05:00
Cacodemon345
8ed622f67b Move extern into video.h (part 1) 2024-02-13 17:06:10 +06:00
OBattler
4dc7342d5e Split the NE1000 and NE2000 into the Novell and Compatible versions, with I/O base address and IRQ selections per the Windows 95 .INF file, and added the D-Link DL-220P ISA PnP NE2000 clone. 2024-02-10 04:51:07 +01:00
OBattler
3f8952a558 More (S)VGA horizontal blanking fixes and CPU CR0 bit 4 fixes. 2024-02-09 18:02:33 +01:00
OBattler
5a3d74d64f 286/386 interpreter fixes - the correct opcode arrays are now used and fixed the debug registers. 2024-02-09 12:14:35 +01:00
TC1995
f8647f07a3 Mach64 temporary updates:
Temporarily replace the ATI68860 8bpp renderer with a clone one while the current renderer (8bpp) is being fixed for proper colors on the Mach64.
2024-02-07 03:06:19 +01:00
TC1995
7198b78069 Couple of changes in the video side.
1. Second attempt to fix the banking in the Cirrus (sigh, why doesn't banking get nulled automatically...)
2. Introduce a new timer to the 8514/A side so it won't slow the VGA clock down it was shared before.
2024-02-07 01:53:16 +01:00
OBattler
f3d585a1e1 Fix horizontal blanking calculation, fixes some S3 blanking excesses. 2024-02-07 00:11:02 +01:00
TC1995
0d88e8394c SCSI CD-ROM fixes of the day.
1.Re-implemented in the best way possible the muted part of the Toshiba/NEC Play Audio commands and related, per spec.
2. Forgot to add a check to a Sony Vendor Data Out command  when the len is 0 it should become a Status command, fixes emulator crashes when len is 0 using some CD software.
2024-02-06 21:18:25 +01:00
Alexander Babikov
fb335a754a Merge the XTIDE XT/XT+ and AT/386 BIOS variations 2024-02-05 03:18:24 +05:00
cartifanwlr
4e8815e0b7 Add A-Trend 4GPV5 machine (Award 4.99G) 2024-02-04 14:00:18 +03:00
Cacodemon345
b28b3bc51d Merge remote-tracking branch 'origin/master' into c&t_69000 2024-02-02 15:33:35 +06:00
OBattler
285accae5b Gigabyte 430LX and 430NX machine fixes. 2024-02-02 05:34:38 +01:00
OBattler
ce73276bfe WD76C10 rewrite, closes #238. 2024-02-02 05:32:43 +01:00
OBattler
a8f250b6c9 LPT: Function to read register in preparation for the WD76C10 rewrite. 2024-02-02 05:29:34 +01:00
OBattler
9d3c7eaad8 Merge branch 'master' of https://github.com/86Box/86Box 2024-02-02 05:25:55 +01:00
OBattler
0a5d25fdde Memory: Disable _mem_exec in phys() accesses when not using the 486+ interpreter or dynamic recompiler, and write protect support in preparation for the WD76C10 rewrite. 2024-02-02 05:25:40 +01:00
cartifanwlr
0e7eadb474 Add the AMIBIOS for the "MRBIOS 386SX" as the board has been identified 2024-01-29 22:50:46 +03:00
Cacodemon345
31da060fef Merge remote-tracking branch 'origin/master' into c&t_69000 2024-01-29 15:55:39 +06:00
Alexander Babikov
e82d9d0c29 Fix "Sound card #" translations 2024-01-29 00:49:13 +05:00
cartifanwlr
bc4f09d5a9 Revert "Move MSI MS-4144 into dev branch"
This reverts commit f4fadfe22e.
2024-01-27 21:12:27 +03:00
cartifanwlr
f4fadfe22e Move MSI MS-4144 into dev branch 2024-01-27 18:34:04 +03:00
BurnedPinguin
64d7fbc186 Temporarily remove machines ZEOS Martin and Olivetti M4-5xx because of A20 issues. 2024-01-27 09:40:24 +01:00
BurnedPinguin
fc834decb9 Merge branch '86Box:master' into machine_23 2024-01-27 09:34:42 +01:00