Commit Graph

103 Commits

Author SHA1 Message Date
OBattler
7ee1cf54bc Slight refactoring of some IDE part (removed some excess else's). 2018-10-25 23:39:35 +02:00
OBattler
9e610a403a Removed some excessive breaks. 2018-10-25 23:23:13 +02:00
OBattler
60cafad2f5 Slight IDE bug fixes. 2018-10-25 21:54:57 +02:00
OBattler
8802c5d3df Some CD-ROM image and IDE fixes. 2018-10-20 04:59:10 +02:00
OBattler
c663147d11 Imported CD-ROM-related changes from VARCem;
Removed cdrom_null.c/h;
Some changes to logging (will be spread to everything else soon).
2018-10-17 05:29:48 +02:00
OBattler
6155802b59 Split generic CD-ROM from SCSI-style CD-ROM;
Redid the way SCSI and ATAPI devices are handled;
Slight timings change in the NCR 5380;
Devices are now closed by device_close_all() in the reverse order of the one in which they were started;
Slight changes to some code in win/;
Added the WM_HARDRESET and WM_SHUTDOWN window messages for configuration manager purposes.
2018-10-10 22:33:24 +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
OBattler
08bf8315cf Removed more ROM set checks and fixed ET4000AX ROM paths. 2018-09-15 16:45:52 +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
ab3cce21ee The Iomega ZIP sector access commands no longer read/write the data sector by sector (there was absolutely no need for that since that was done before ever asserting DRQ and was a left-over from the CD-ROM where it does that to make IOCTL happy);
The CD-ROM and Iomega ZIP drives now clear the error bit when the PACKET COMMAND command is issued, fixes the Iomega GUEST.EXE for DOS hang when run while the Iomega ZIP drive is empty.
2018-03-20 19:45:45 +01:00
OBattler
f87500ddbf IDE reset via PCI turbo reset control's hard reset function now only sets the signature for all IDE devices and clears the buffers;
The buffers are now memset'd to 0x00's on allocation;
The Iomega ZIP drive now issues an IRQ on receipt of the PACKET COMMAND command, fixes it on Windows 98 SE.
2018-03-20 16:04:09 +01:00
OBattler
be7fdaf374 The IDE buffer is now once again memset'd to 0x00's at the beginning of ide_atapi_zip_identify(), fixes ATAPI Iomega ZIP drive identification. 2018-03-20 14:08:53 +01: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
d1c3170756 Fixed more CD-ROM bugs. 2018-03-17 23:01:06 +01:00
OBattler
a59dc8e436 CD-ROM code clean-ups, also reduces memory usage by a further about 2 MB. 2018-03-17 20:32:20 +01:00
OBattler
f8f889b72c Fixed a minor issue in hdc_ide.c;
Fixed SCSI DMA command termination in the CD-ROM and Iomega ZIP code.
2018-03-16 22:46:05 +01:00
OBattler
9ae91cdae6 (D)word reads from IDE channels with no device attached now always return FFFF(FFFF), fixes the last IDE-related crashes. 2018-03-16 19:09:26 +01:00
OBattler
a6ed6cde1e The IDE buffer is now correctly allocated at a size of 65536 words rather than bytes, fixes crashes with some machines. 2018-03-16 19:03:20 +01:00
OBattler
1f11f9f9a1 IDE buffers are now allocated on IDE reset, only for attached devices (and sector buffers only for hard disks). 2018-03-15 23:32:07 +01:00
OBattler
3b62e83315 Ported some IDE and ATAPI-related improvements from PCem;
Fixed the ATI 18800 emulation;
More tweaks to reduce RAM usage.
2018-03-15 22:57:24 +01:00
OBattler
f7c9792abc Brought ATAPI IOMEGA ZIP PACKET IDENTIFY and SET FEATURES commands in line with the real drive's behavior (information courtesy of claunia), the ASUS P/I-P54TP4XE now correctly recognizes it as a ZIP drive. 2018-03-06 19:21:06 +01:00
OBattler
22536d8d03 Fixed a mistake in floppy/fdd.c;
Fixed some undeclared variables in floppy/fdd_imd.c;
Moved zip.c/h to disk subfolder;
Fixed the warnings in video/vid_t1000.c.
2018-03-06 01:14:38 +01:00
OBattler
8e5151d652 Fixed some whoopsies. 2018-03-02 21:58:42 +01:00
OBattler
cb79f53c54 Fixed several things, including built-in video on the Toshiba T1000 and T1200. 2018-03-02 21:57:37 +01:00
OBattler
ffc7ee4ccd Ported over the CD-ROM, Iomega ZIP, and RTC fixes from PCem and disabled Iomega ZIP logging. 2018-02-27 23:55:28 +01:00
OBattler
8c5976e929 Fixed a compile-breaking mistake in hdc_ide.c. 2018-02-25 22:15:14 +01:00
OBattler
9479b28f9c Implemented IDE seek commands from 0x71 to 0x7F (they behave identically to 0x70, per the specification). 2018-02-25 22:01:56 +01:00
OBattler
bc0511d866 Fixed the hard disk controller mess (and added a check to prevent double IDE initialization), and made IDE always initialized as a device_t. 2018-02-14 13:52:19 +01:00
OBattler
678f0a71f7 Added the option to disable updating status bar icons (doing so gains performance during disk I/O);
Reduced sound gain options to one (because the per-source gain does not work right);
Added the Diamond SpeedStar PRO (CL-GD 5428), per patch from TheCollector1995.
2018-02-11 20:51:42 +01:00
OBattler
410ecb1f22 Added Iomega ZIP emulation. 2018-01-26 22:17:09 +01:00
OBattler
23c536f5dd Split off the AMD SYSCALL and SYSRET instructions to x86_ops_amd.h;
Moved the two 440FX board along with the Pentium Pro and Pentium II CPU's to the Dev branch;
Applied the PCem commit that fixed PIIX IDE Bus Master initialization.
2018-01-01 02:57:39 +01:00
waltje
3a32bda6dc Changes to add ISA/PCI/VLB versions of 'external' IDE controllers. 2017-12-16 00:02:31 -05: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
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
9ea0163bb7 Rewritten the PIIX IDE Bus Master operation, ReactOS now boots using IDE DMA and ATAPI DMA;
Fixed the IDE device detection hang with > 8 GB hard disks;
Rewritten the SMC FDC37C932FR Super I/O chip emulation;
Added an early implementation of the PIIX4, currently not in the makefile because nothing uses it right now.
2017-10-26 20:37:39 +02:00
OBattler
45204350b4 IDE hard disks and ATAPI CD-ROMS with DMA support now report as supporting UDMA modes, for the sake of future-proofing things;
Changed the CD-ROM capabilities MODE SENSE page a bit;
Applied the S3 Trio and SVGA changes from PCem;
Fixed saving of the video renderer settings;
Fixed DirectDraw full screen;
Fixed crashes on soft reset in full screen.
2017-10-25 02:17:27 +02:00
OBattler
2f2785c1c9 Fixed ATAPI PIO multi-phased transfers - fixes the catalog read error in Windows 2000;
Fixed the last remaining ATAPI DMA bugs;
Fixed IDE hard disk DMA;
Fixed PIIX bus master DMA read and write;
The Settings dialog now accepts more than 16 heads for IDE hard disks;
Added the IDE READ DMA ALT and WRITE DMA ALT commands;
Reenabled current CHS translation reporting, with bugfixes, hopefully the bugfixes will prevent certain larger hard disks from being detected as 250 MB.
2017-10-24 04:15:05 +02:00
OBattler
ed865610e9 A dynamic recompiler block's validity is now separate from its starting code address, should fix most of the known recompiler fatals;
The CD-ROM buffer is now dynamically malloc'd;
Did a lot of bugfixing in cdrom.c and scsi_disk.c, Debian 8's modprobe aha1542 and the NT 3.10.404.1 Trantor 310b driver now work;
Fixed the IDE IRQ/MIRQ mess and ATAPI DMA transfer length;
Fixed the operation of mmutranslate() a bit;
Commented out several instances of excess logging;
Applied the mainline PCem commit prefetch commit;
Readded missing Sound Blaster DSP MIDI behavior and gave it the correct MPU struct;
All non-IBM 486 machines now correctly have the VLB flag set.
2017-10-16 06:19:18 +02:00
OBattler
9f3a58bb24 This should fix the mess. Sorry for that. 2017-10-15 03:01:40 +02:00
OBattler
e9355aa0ad Merge branch 'master' of https://github.com/OBattler/86Box 2017-10-15 02:51:17 +02:00
waltje
724e5c44df More cleanups to separate main code from platform support and UI support, plus a few bugfixes. 2017-10-12 14:26:28 -04:00
waltje
bd89e66b7b Separated main code from UI and PLATform support code, plus other generally small fixes here and there. 2017-10-10 03:16:59 -04:00