Commit Graph

81 Commits

Author SHA1 Message Date
OBattler
17a96ac660 More cleanups and fixes in the NCR 5380 code;
Several bugfixes in disk/hdd_image.c - image creation on emulator start (if image not present) no longer creates too small images and creaters VHD footers with the correct CHS values.
2018-10-08 21:49:47 +02:00
OBattler
fd6cacc312 Fixed CD-ROM, ZIP, and SCSI disk changeable page arrays to correctly contain only 0's and 0xFF's in addition to page number and page length, and added descriptive #define's for the pages that did not yet have them. 2018-10-07 00:35:37 +02:00
OBattler
4949e1718c And two more yet again. 2018-10-04 03:41:54 +02:00
OBattler
ed92602dad Fixes for the (S)VGA common DAC and some card-specific DAT's (ATi 68860, BT48x family, and the Cirrus Logic DAC), fixes Star Control II among other things. 2018-10-04 01:19:43 +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
ea3fdf9260 Fixed IDE_NUM in disk/hdc.h, now the ide_drives array again accomodates for XTIDE. 2018-09-24 15:20:17 +02:00
OBattler
08bf8315cf Removed more ROM set checks and fixed ET4000AX ROM paths. 2018-09-15 16:45:52 +02:00
OBattler
60feeee623 Fixed the signedness of some variables in the ide struct. 2018-09-13 13:42:33 +02:00
OBattler
b51b02625d Added some cast around some calculation results in disk/hdd_image.c. 2018-09-13 05:59:00 +02:00
OBattler
f7ec97e862 Changed one local variable in a function in disk/zip.c to 32-bit. 2018-09-13 05:33:45 +02:00
OBattler
da440c30b5 Fixed all the signedness, non-constant initializer, and shadowed variable warnings in disk/zip.c and scsi/scsi_disk.c. 2018-09-12 19:46:26 +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
c5c3732cbb Fixed some bugs. 2018-04-26 17:37:44 +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
040b97bfc1 Some bug fixes. 2018-04-26 02:53:18 +02:00
OBattler
14fbaee4bd Changed the path to the WD XTA controller ROM to be consistent with the other ROM's the emulator uses. 2018-04-26 00:35:20 +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
0f06407825 Applied the latest PCem commits. 2018-03-21 15:16:25 +01:00
OBattler
77817f9437 Disabled the Iomega ZIP logging. 2018-03-20 19:46:47 +01: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
df746297c2 Several CD-ROM fixes. 2018-03-20 18:32:18 +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
7237cc7237 Some tweaks to hard disk image creation. 2018-03-19 09:48:44 +01:00
OBattler
7d070e2930 Got RAM usage down slightly further by merging in mode code from VARCem;
Fixed the mouse.
2018-03-19 08:01:13 +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
16c722b32f Realistic CD-ROM timings on ATAPI PIO, ATAPI DMA, SCSI NCR 53c810, and SCSI Adaptec/Buslogic;
Added ability to select emulated CD-ROM drive speed;
The Adaptec and BusLogic SCSI controllers are no longer threaded;
Two fixes in video/vid_s3.c.
2018-03-07 20:06:08 +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
f18cd3d89e Removed excess memset()'s from hdd_image.c and did a few other optimizations there, also fixed incorrect zero'ing of the buffer in hdd_image_write_ex();
Did a tweak to mmutranslate() in mem.c, should increase performance again;
Added the ATi VGA Wonder and ATi VGA-88, made the ATi VGA Edge-16 use the correct BIOS.
2018-02-07 19:01:39 +01:00
OBattler
410ecb1f22 Added Iomega ZIP emulation. 2018-01-26 22:17:09 +01:00
OBattler
47d6e815b6 Adding the hard disk image now shows a progress bar indicating progress so that the end user is no longer left with a non-responding dialog and no idea what's going on. 2018-01-24 20:58:39 +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
OBattler
f050810e2f Added the NCR 53C810 PCI SCSI controller;
Fixed the behavior of the CD-ROM GET CONFIGURATION command when unimplemented features are requested;
Fixed the behavior of the CD-ROM READ DVD STRUCTURE command in some situations and made it correctly report 05/30/02 for incompatible format;
Reworked the PS/2 Model 80 Type 2 memory handling a bit;
The emulator now allocates the few MB of space needed for pages for the entire 4 GB RAM space at the startup and only memset's it to 0 on hard reset - should make sure DMA page reads from/writes to memory-mapped devices no longer crash the emulator on invalidating the memory range;
Applied app applicable PCem patches;
The PS/1 Model 2133 now also applies PS/2-style NMI mask handling - fixes the 486 recompiler on this machine;
Added the missing #include of "cpu/cpu.h" in io.c, fixes compiling when I/O tracing is enabled.
2017-12-10 15:16:24 +01:00