Commit Graph

966 Commits

Author SHA1 Message Date
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
c162a4cb1e Fixed some things regarding the PS/2 Model 70 Type 3 and 4 (but the 12903 error remains, and is also present on PCem, so waiting for an upstream fix), and slightly debloated the PS/2 MCA code. 2018-03-22 19:05:51 +01:00
OBattler
8e22d282d1 More CD-ROM fixes, Little Big Adventure now looks again;
Made SCAT logging optional and disabled by default.
2018-03-21 14:46:54 +01:00
OBattler
0ed4750eac Added the split mapping for the two PS/2 Model 70 types. 2018-03-20 22:06:15 +01:00
OBattler
3a18912d5a The KMS-C-02 now correctly initializes with the AMI AT keyboard controller, should hopefully fix the last keyboard problems on this machine. 2018-03-20 20:02:22 +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
473fd383d2 Do not allow mouse capturing if no mouse configured, patch from VARCem;
Reimplemented saving of all the non-volatile things of the Toshiba T1000 and T1200;
Applied the latest T1200 patch from John Elliott;
Applied the latest ATI Korean VGA patch from greatpsycho.
2018-03-19 04:19:19 +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
78515537ef Changed the way PS/2 Model 80 split mapping is handled (but OS/2 2.x still runs on it);
The pages array are no longer allocated for the entire memory of space if memory size + 384 is above 16 MB (turns out it was not needed at all), further significantly reduces the emulator's RAM usage;
Made greatpsycho's revised SVGA status handling specific to ATI cards, while the generic (S)VGA code uses the old handling - fixes error 2401 on PS/2 Model 80.
2018-03-16 00:08:43 +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
ddcb901421 Ported over the VARCem NVR commit. 2018-03-13 03:46:10 +01:00
TC1995
0b02fc37bc Ported the most relevant PCem commits to 86Box. 2018-03-11 18:26:44 +01:00
OBattler
9356ae8bed Moved the MR Intel Advanced/ATX to the Dev branch. 2018-03-06 00:51:48 +01:00
OBattler
a7515042c4 Fixed the Toshiba T1000, T1200, and Xi8088;
If device initialization files and the device has a name, the name of the device is logged;
Fixed path of the OTI-037c BIOS;
The ATI Mach64GX ISA is now AT-compatible only;
The CL-GD 5428 and 5429 ISA are now available on XT machines.
2018-03-03 00:02:21 +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
f8f6b3a12b Committed machine/m_xt_xi8088.c/h that I forgot before. 2018-03-02 20:49:04 +01:00
OBattler
99d22c3c03 Added the Xi8088. 2018-03-02 20:47:18 +01:00
OBattler
b7120def92 Added the GW-286CT GEAR, Samsung SPC-4216P, and KMX-C-02 (SCAT machines). 2018-03-02 20:03:33 +01:00
OBattler
4e89dd99b1 Committed some files I forgot to commit before. 2018-03-02 19:33:38 +01:00
OBattler
6e823e6232 Added the Toshiba T1000 and T1200. 2018-03-02 19:33:02 +01:00
TC1995
e824c472cf Updated file version numbers and dates. 2018-02-24 16:37:44 +01:00
TC1995
26ec9293b7 Ported the PIT fix and LPT1 fix for the Compaq Portable from PCem 2018-02-24 16:25:57 +01:00
OBattler
2f5b995dc8 Applied the PIIX fixes from PCem;
Fixed the default timings of the Intel Advanced/EV's on-board Trio64.
2018-02-24 11:37:45 +01:00
OBattler
1405d9b10b Moved the AMD K5 and K6 CPU's and the ATi VGA Wonder XL24 to the Dev branch;
Turned the char arrays in gameport.h into const char pointers;
The makefile no longer links in the (unfinished) PIIX4 emulation code (which is currently not used by anything even in the Dev branch).
2018-02-18 13:43:49 +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
4677cf600b The Intel Flash device with inverted high bit pin now again correctly responds to reads and writes on the high BIOS mapping, fixes programming the Flash with the AMI BIOS Flash utility;
Added internal graphics card option for the Intel Advanced/EV for the on-board S3 Trio64;
Fixed configuration for internal graphics card options (using the machine's Configure button) for some machines (PCjr, Tandy 1000, Tandy 1000 HX, and now also the Intel Advanced/EV).
2018-02-09 05:42:40 +01:00
OBattler
ccb5fdf563 The Amstrad machines now initialize the correct FDC types;
Removed an excess logging line from keyboard_xt.c.
2018-02-02 20:42:50 +01:00
OBattler
704e2ac3ae Returned mouse_reset() to where it was and split off the call to mouse_close() to pc_reset_hard_close(). 2018-01-29 01:19:49 +01:00
OBattler
2e17ef04e3 Fixed a slight mess with the Amstrad PC1512 and PC1640 memory mappings. 2018-01-29 00:19:33 +01:00
OBattler
cc7579b898 Moved the two Laser XT machines to the Dev branch. 2018-01-28 17:56:32 +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
cf6023aed2 Various fixes needed to fix the two Laser XT boards. 2018-01-25 22:36:24 +01:00
OBattler
9911df5024 Various EGA-related clean-ups and fixes, and added EGA monitor type selection (ported from PCem);
Replaced the (S)VGA monitor/DAC sense with that from PCem, which, of all implementations I've tested, works best.
2018-01-24 23:15:00 +01:00
OBattler
25a0860011 The IBM AT and the IBM XT 286 now have a FDC again. 2018-01-24 00:35:52 +01:00
OBattler
50bb92fcbe Fixed the IBM PS/1 Models 2121 and 2133 to use the correct graphics card device_t;
Removed the Mach64 ISA until someone finds a properly working BIOS;
Changed the Mach64 VLB to use the BIOS that actually works;
Moved the standalone TI CF62011 graphics card to the Dev branch until someone finds a BIOS for it;
Removed an accidental temporary change in win_dialog.c;
Reorganized the graphics card ID's to allow simplification of the MDA and VGA #define's in video.h;
Added a workaround for the TVGA8900D DAC sense, so the card is in color again.
2018-01-21 14:54:26 +01:00
OBattler
8e6497f01d Added the "New Floppy Image" functionality with its own dialog box, can create 86F, Japanese FDI, and IMG images;
The settings dialog now keeps track of MFM/XTIDE/ESDI/IDE channels and SCSI ID's and LUN's;
The IBM PS/2 Model 50 now installs a Model 80-style memory expansion card (MCA ID FCFF) when more than 2 MB RAM is selected, and now supports a maximum of 10 MB RAM.
2018-01-19 15:39:13 +01:00
OBattler
5318bc08d8 The FDC is now a device_t, and the FDC code has been cleaned up;
Merged floppy.c and fdd.c and renamed floppy_*.c (the floppy image format handlers) to fdd_*.c;
Reading the AT or PS/2 keyboard controller status no longer clears the transmit timeout bit, fixes error 8601 (mouse error) on the IBM PS/2 Model 80;
MMU translate and DMA physical reads and writes now go through _mem_exec instead of directly to ram[], should fix the last remaining problems with remapped mappings;
Implemented the Sound gain dialog;
Added the resource for the "New floppy image" dialog and the needed functions for the functionality of exporting the currently mounted floppy image as 86F, both of which should be finished in the next commit;
Applied the CD-ROM fixes from the PCem commit;
Added the "Keep ratio" option for full screen stretch.
2018-01-17 18:43:36 +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
b4aff71a6b Fixed keyboard/mouse disable handling, fixes moving the PS/2 mouse in the P55T2S BIOS' CMOS Setup;
The "Write data to mouse" command no longer times out when there is PS/2 mouse, and instead adds the 0xFF byte to the queue, properly fixes the hang when entering into the P55T2S BIOS' CMOS Setup with mouse set to anything other than PS/2;
Removed the incorrect implementation of the OPTi 495 register 0x27 bit 7, it had nothing to do with A20, and the A20 stuck error was caused by the previously incorrect implementation of the 8042 output port bit pulse commands which is no longer the case;
The 8042 now once again correctly initializes with A20 Gate on.
2018-01-08 05:46:52 +01:00
OBattler
32bc2a02b3 Disabling the PS/2 mouse via the KBC command byte now also disables the "Write to mouse output buffer" and "Write to mouse" commands, fixes hang when entering CMOS Setup on the P55T2S;
Unified the various machines' identical port 92h implementations.
2018-01-07 20:36:30 +01:00
OBattler
519ab94945 The Quadtel variant of the 8042 (used by the Amstrad MegaPC) is now correctly PS/2 type. 2018-01-04 07:56:37 +01:00
OBattler
ea0b9c6b38 Added missing includes to m_at_4gpv31.c, should fix compiling of the Dev build. 2018-01-04 07:48:43 +01:00
OBattler
1d4fed2110 Improved 8042 (AT and PS/2 keyboard controller emulation), no more hacks, split into various devices depending on vendor (generic, AMI, IBM (MCA), Quadtel, Toshiba), and fixed several commands - hopefully fixes all existing AT+ keyboard problems (such as incorrect scan codes on some machine under some circumstances);
Fixed a bug in the SMC FDC37C932 emulation, fixes the FDC on the two Acer machines;
Re-added some Acer-specific I/O port handlers, fixes entry into CMOS Setup on the two Acer machines.
2018-01-04 07:44:33 +01:00
OBattler
9b2705eb9f Inverted the operation of the OPTi 495 A20 control bit and made the AT keyboard controller (8042) as well as memory default to A20 off - makes both the MR 386 DX and the Award 386 and 486 clones work correctly;
The Amstrad MegaPC now correctly initializes the internal Paradise WD90C11 graphics card, making the machine work again.
2018-01-04 01:57:55 +01:00
OBattler
412ae3726b Implemented the OPTi 495 A20 state switch (register 0x27 bit 7), fixes the A20 gate stuck error. 2018-01-02 21:35:25 +01:00
OBattler
b7501e3b5f Fixed the last compile-breaking mistakes. 2018-01-01 03:40:59 +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
OBattler
a8be9c22e9 Moved the Compaq Deskpro 386 to the Dev branch. 2017-12-31 21:59:27 +01:00
OBattler
d9e7f0c4fc Renamed the Paradise WD90C11 Standalone to Paradise WD90C11-LR and made it use the correct BIOS;
Added the Paradise PVGA1A (standalone) and the Paradise WD90C30-LR, both with configurable video memory;
Added the Toshiba T3100e.
2017-12-31 06:37:19 +01:00