Commit Graph

66 Commits

Author SHA1 Message Date
OBattler
d56df03a53 Ported the WinPcap thread's packet sanity checks to the SLiRP thread - SLiRP is now more stable;
Unified all three NIC families' DP8390 chip implementations in net_dp8390.c/h;
Some fixes for the WD8013EBT NIC;
Network status bar icon updating is now done at WinPcap/SLiRP handler level, not at the NIC level anymore.
2018-10-19 00:37:25 +02:00
OBattler
647d78e4c2 Removed a lot of useless #include's from a lot of files and reworked the SCSI #include's a bit to resolve the problem of scsi.h being a mess. 2018-10-02 22:54:28 +02:00
TC1995
5e00e390de NE/2 changed to a NE/2 compatible card (Ethernext/MC).
Added NCR Business Audio MCA card (Windows Sound System compatible) and its copyright information
2018-08-11 17:48:51 +02:00
OBattler
bdff70c322 Disabled the NE2000 logging. 2018-07-24 01:53:46 +02:00
TC1995
7dffe08136 Removed V20 specific instructions (for now) and corrected some warnings. 2018-07-21 16:00:10 +02:00
TC1995
0c01e1d7a8 Updated copyright info. 2018-07-19 16:11:34 +02:00
TC1995
2fecef0741 Preliminary 186 emulation.
Added MCA variant of the ET4000 VGA card.
Added NE/2 Netware card.
Corrected timings of the NCR 5380-based cards.
Added the WD8003E (8-bit ISA), WD8013EBT (16-bit ISA) and WD8013EP/A
(MCA) network cards.
2018-07-19 16:01:31 +02:00
OBattler
950ce8f5aa Added the 3Com 3C503 Network card;
Several bug fixes;
Preliminar addition of the SDL 2 renderer (does not yet work correctly in full screen mode);
SCSI devices no longer have configurable LUN's (this matches the configurability of real SCSI devices);
SCSI LUN's are now handed by the device's handler;
Removed all unused strings;
Removed some unused code files;
Significantly rewrote the bus mouse emulation.
2018-07-15 01:41:53 +02:00
OBattler
5d8deea63b Changes to logging - nothing (other than some parts of pc.c) uses the global pclog anymore (and logs will be almost empty (until the base set logging flags is agreed upon);
Fixes to various hard disk controllers;
Added the Packard Bell PB640;
Fixed the InPort mouse emulation - now it works correctly on Windows NT 3.1;
Removed the status window and the associated variables;
Completely removed the Green B 486 machine;
Fixed the MDSI Genius;
Fixed the single-sided 5.25" floppy drive;
Ported a CPU-related commit from VARCem.
2018-05-21 19:04:05 +02:00
OBattler
16a7b1cef2 Removed win_status.c and the related stuff as it was not updated for a while and no longer displayed useful information. 2018-04-26 13:33:29 +02:00
OBattler
a412ceb4d9 Applied all relevant PCem commits;
Extensively cleaned up and changed the CD-ROM code;
Removed CD-ROM IOCTTL (it was causing performance and stability issues);
Turned a lot of things into device_t's;
Added the PS/1 Model 2011 XTA and standalone XTA hard disk controllers, ported from Varcem;
Numerous FDC fixes for the PS/1 Model 2121;
NVR changes ported from Varcem;
The PCap code no longer requires libpcap to be compiled;
Numerous fixes to various SCSI controllers;
Updated NukedOPL to 1.8;
Fixes to OpenAL initialization and closing, should give less Audio issues now;
Revorked parts of the common (S)VGA code (also based on code from QEMU);
Removed the Removable SCSI hard disks (they were a never finished experiment so there was no need to keep them there);
Cleaned up the SCSI hard disk and Iomega ZIP code (but more cleanups of that are coming in the future);
In some occasions (IDE hard disks in multiple sector mode and SCSI hard disks) the status bar icon is no longer updated, should improve performance a bit;
Redid the way the tertiary and quaternary IDE controllers are configured (and they are now device_t's);
Extensively reworked the IDE code and fixed quite a few bugs;
Fixes to XT MFM, AT MFM, and AT ESDI code;
Some changes to XTIDE and MCA ESDI code;
Some fixes to the CD-ROM image handler.
2018-04-25 23:51:13 +02:00
OBattler
b1efb99ed6 Applied a whole slew of patches, getting RAM usage down by a further 10 MB. 2018-03-19 01:02:04 +01:00
OBattler
b6c393cc91 Numerous CD-ROM fixes (and disc changes now work correctly in Windows 98 SE);
Slight reworking in the mouse and network code (ported from VARCem) in preparation for a major change that will const a lot of things to further reduce RAM usage.
2018-03-18 20:48:10 +01:00
OBattler
e0a9de85c9 Changed several char arrays all around the code to const char pointers, debloats the executable file from 8.7 MB to 5.6 MB;
Replaced the Cirrus Logic code with the latest code from TheCollector1995 - the CL-GD 5428 is now fully working, as is the CL-GD 5429;
Minor clean-up in the AHA/BusLogic BIOS commands code;
Slightly rewritten mem_readb_phys_dma() and mem_writeb_phys_dma().
2018-02-18 10:32:51 +01:00
OBattler
6f246788e8 The NE1000 and NE2000 can now use IRQ 2 and 4. 2018-02-09 22:49:31 +01:00
OBattler
6fd6097467 The Windows IOCTL code now correctly gets the allocated length for the CDB for the READ DVD STRUCTURE command, fixes crashes with Windows 98 SE and ME;
Fixed a few I/O handler adding/removing related bugs in the Intel PIIX/PIIX3, UMC UM8699F Super I/O chip, Sound Blaster DSP, and Realtek 8019AS codes;
The code in io.c now uses linked lists, I had to do this to properly fix the I/O handler mess with the Realtek RTL8019AS on the Award 430VX PCI (which was causing an emulator crash at POST).
2018-02-02 00:14:17 +01:00
OBattler
97cc1774f6 Updated the headers of net_ne2000.c/h to reflect the fact the NE1000 is no longer in the Dev branch and removed the NE1000-related things from the makefile. 2018-01-28 12:15:57 +01:00
OBattler
a35c4f350f The NE2000 is no longer incorrectly marked as 8-bit, should fix it. 2018-01-28 11:59:44 +01:00
OBattler
bd7e955b64 Finished the NE1000 (per patch from TheCollector1995) and added the RTL8019AS ISA PnP, finalizing the work on NE1000/NE2000-compatible network cards;
Disabled excess ZIP logging;
Applied the PCem video and SCAT commits;
Restored the video initialization line in pc.c back to where it was before.
2018-01-28 03:15:01 +01:00
OBattler
845c8ed4bd Improved passing of scan codes to the emulated keyboards;
Fixed Sound Blaster 16 and earlier CD-ROM volume registers (and made them no longer default to 0);
Serial mouse now resets the FIFO before sending the ID, fixes mouse detection after clipping and moving the mouse;
Rewritten CD-ROM and SCSI disk Mode Select handling and changed things regarding Mode Sense as well, also fixes emulator segmentation faults when anything attempts to do a Mode Select;
Fixed the Microsoft InPort mouse emulation (used the Bochs code as reference for the polling/state update code), now it actually moves;
The PCjr initialization now sets the XT scan code table, makes the keyboard actually work on the PCjr again;
Several bugfixes regarding the Read CD commands, fixes CD Audio in digital mode on Windows ME;
Finally properly fixed the regular CD Audio MSF/LBA conversion mess;
Applied all applicable PCem commits.
2018-01-13 22:56:13 +01:00
OBattler
044559f4e9 Fixed a number of bugs in the NCR 53C810 code;
64-bit Windows 86Box now compiles without warnings.
2017-12-13 22:39:41 +01:00
OBattler
b297311ba3 Added an #include to SLiRP's ip_input.c, so that it compiles correctly using GCC 7.2.1. 2017-12-12 21:42:54 +01:00
waltje
c7946fbce7 Fix logging issues. 2017-12-10 02:54:20 -05:00
OBattler
772955bf59 The PS/2 Model 80 memory expansion board initialization now correctly sets up the RAM mappings;
The per-device log functions now all call pclog().
2017-12-05 23:35:35 +01:00
waltje
ce1bab2967 Cleanups to make all logging functions use stdlog instead of stdout.
The new --logfile (-L) commandline option sets a file to log to.
The new --debug (-D) forces output to stderr if no logfile is given.
2017-11-24 02:24:06 -05:00
waltje
7c67e867c8 Major commit, cleaning a lot of old stuff.
IBM.H is gone, video stuff re-organized. Keyboard stuff reorganized.
Machines that have their own video, mouse and/or keyboard now have all this in their machine file.
Fixed and other cleanups here and there.
2017-11-05 02:00:50 -05:00
waltje
b40ea14027 Cleanup, moving stuff out of ibm.h and such. Moved more configuration variables into main. Minor changes for multiplatform. 2017-11-02 02:39:30 -05:00
waltje
0565bf76af More cleanups. Lowercased all BIOS ROM filenames. Added ISA Cirrus-Logic to the video card table. 2017-11-01 01:51:55 -05:00
waltje
bfe038ded9 Cleanup, mostly network threading madness. Statusbar is now created at hard reset, IF the configuration has changed. Other minor things. 2017-10-29 04:20:59 -05:00
waltje
f4367133e7 Fixed network pcap madness. 2017-10-28 16:33:40 -04:00
waltje
4a1bd38435 Network portability fixes - SLiRP and Pcap now both work on Linux and FreeBSD. 2017-10-28 03:33:05 -04:00
OBattler
24d2c0866b Fixed a compile-breaking error in net_slirp.c. 2017-10-28 07:37:56 +02:00
OBattler
ce89e2145c Fixed it again. 2017-10-28 07:33:08 +02:00
OBattler
9a0a82b7ac Fixed an even mess up in the PCap and SLiRP code. 2017-10-28 07:29:50 +02:00
waltje
15538f1441 More portability changes, and some bugfixes found through that. 2017-10-27 20:54:53 -04:00
waltje
77d695f430 More portability changes and cleanups. 86Box now also compiles (and runs) on FreeBSD 10.4-RELEASE. 2017-10-27 04:55:33 -04:00
OBattler
2be1c21c8a Fixed the window resizes function in win_video.c, fixes window resizes with non-resizable window (ie. the main window is no longer stuck in 640x480);
Fixed the Force 4:3, Enable EGA/(S)VGA overscan, and Scale options;
Fixed a bug regarding register 0 of the SMC FDC37C665 Super I/O chip;
Commented out some excess logging.
2017-10-20 07:00:48 +02:00
waltje
2f490728ca Sometimes I can't remember my own code. 2017-10-19 21:30:37 -04:00
waltje
0659f5fe6a Whoops, and moved the config variables to pc.c. 2017-10-19 21:26:09 -04:00
waltje
555a14746c Merge branch 'master' of https://github.com/OBattler/86Box 2017-10-19 21:09:20 -04:00
waltje
0af26c1c3b More cleanups, also updated Makefile.local with all "user-settable" parts. 2017-10-19 21:08:41 -04:00
OBattler
b755b27304 Reworked network and SCSI thread initialization and termination;
Hard disk controller name and other related strings are now char * instead of fixed-size arrays.
2017-10-19 23:55:51 +02:00
waltje
7f24ba9fe9 Another cleanup run. 2017-10-17 02:01:03 -04:00
OBattler
bfb0093b38 Cleaned up the network and SCSI thread stuff. 2017-10-17 05:15:53 +02:00
OBattler
49ccbd680f The SLiRP mutex is now a Network mutex and is now also used by PCap. 2017-10-16 21:19:51 +02:00
waltje
3572f7a34d Minor fixes for C/C++ inter-operation. 2017-10-16 04:54:57 -04:00
waltje
c1abfe2362 Another cleanup. VNC now has fixed blitters, so 8bit cards (vga,mda,herc et al) work. More cleanups with the %ls stuff, cleanup of threads modules, and MOVED THE MAKEFILE to win/. 2017-10-14 20:04:42 -04:00
OBattler
7581474aab The AHA/BusLogic reset controllers' BIOS commands now return 0x80 (no device present error) for CD-ROM drives if the device is market as not supporting CD-ROM boot, fixes sending of WRITE (10) to CD-ROM drives followed by hang;
The CD-ROM and SCSI disk REQUEST SENSE commands no longer incorrectly set the phase to status;
REQUEST SENSE with non-data direction control byte is now treated as a request to send sense bytes from the command directly to the sense buffer;
SCSI and SLiRP threads now terminate themselves again when out of the while loop;
SCSI and SLiRP mutexes are now closed when the threads terminate themselves;
Fixed a bug causing the "Press F12+F8 or middle mouse button to release" string on the title bar to get corrupt.
2017-10-14 18:52:25 +02:00
OBattler
1d3aa976ec Fixed the SLiRP and SCSI mutexes. 2017-10-14 08:34:47 +02:00
OBattler
2792da5432 Refactored AHA-154x and BusLogic emulation and made them use a common core;
Fixed AHA-154x scatter/gather transfers;
Two-phased SCSI read-direction commands;
Made scsi_bus.c use a dynamically malloc'd buffer instead of a giant fixed-size buffer;
The AHA-154x/BusLogic thread now uses mutexes;
The BusLogic BT-545C is now the BT-545S;
Added the BusLogic BT-542BH;
The AHA-1542CF now again uses the v2.11 BIOS as the CD booting now works;
Applied PCem commit that adds NMI support to the recompiler;
Applied PCem commit that adds the IBM XT 286;
Applied PCem commits that have to do with sound, including the ES1371;
Fixed the NCR5380 output data register;
Moved the SLiRP mutex stuff from win.c to the appropriate network files;
Added sanity checks to everything in win_thread.c.
2017-10-14 07:03:19 +02:00