Commit Graph

216 Commits

Author SHA1 Message Date
OBattler
bd0169cab8 Window resizing fixes - switching between resizable and non-resizable modes no longer distorts the renderer output, and moving the window while it's resizing should (hopefully) no longer trigger spurious resizes. 2018-02-14 12:04:54 +01:00
OBattler
86f50bdc48 Committed the correct pc.c and fixed the number of SCSI ID's in scsi.h. 2018-02-10 01:50:23 +01:00
OBattler
437b519d94 Moved the Sound Gain control option from the Tools menu to a new Sound icon on the status bar;
LPT2 and LPT3 devices can now be selected.
2018-02-06 19:53:34 +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
af0482bd04 Moved mouse_reset() to before machine_init(), should fix the initialization of Amstrad and Olivetti M24 internal mice. 2018-01-29 00:49:40 +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
410ecb1f22 Added Iomega ZIP emulation. 2018-01-26 22:17:09 +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
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
31153f20d4 The NCR 53C810 is now threaded;
Reverted my IDIV fixes - fixes font glitches in Windows XP and possibly other things as well;
Slight fix to line repeat detection in pclog_ex().
2017-12-16 19:46:07 +01:00
OBattler
4f8506b65e Fixed the hang on unclipping the mouse and (hopefully) all the hangs on switching to/from full screen. 2017-12-15 18:47:29 +01:00
waltje
c7946fbce7 Fix logging issues. 2017-12-10 02:54:20 -05:00
waltje
d52846d3be Mouse changes - mice are now regular devices with config options. 2017-12-10 02:09:06 -05:00
OBattler
4ccef55bc0 Modified CD Audio thread initialization and termination a bit, fixes the emulator hang when disabling the last enabled CD-ROM drive;
The CD Audio thread is now closed on emulator close if it was opened.
2017-12-05 20:19:19 +01:00
waltje
fc34a6eaf3 Re-worked mouse code to be devices (to allow for configuration.)
Re-worked the system pathnames (pc.c), renamed cfg_path to usr_path.
Other small things here and there.
Logitech bus mouse re-worked, should be OK now.
2017-12-04 12:01:56 -05:00
OBattler
0e1cbadb48 Changed the base for relative configuration path from the EXE path to the current working directory at startup. 2017-11-26 08:49:21 +01:00
OBattler
0009d4a1c3 AT NVR writes now again correctly set NMI mask;
If no VM path is specified or the specified VM path is relative, it is now converted to absolute using exe_path;
Fixed saving path for screenshots when using the DirectDraw renderer.
2017-11-24 13:14:09 +01:00
waltje
397c693170 Hopefully final update to Logitech Bus Mouse - now works on DOS(MS 2.0/9.1), Win3, WfW311, Win95, Win98, NT 3.1, NT 3.51. 2017-11-23 17:42:00 -05:00
OBattler
e0030bc93c The Compaq Portable III and III/386 now have the Olivetti M24 display adapter (though pending implementation of Compaq-specific registers);
Bugfixes in config.c regarding CD-ROM defaults and IDE channel reading;
Applied all the PCem Voodoo commits;
The Sound Blaster cards' OPL can now be disabled for slight performance gain.
2017-11-22 18:14:27 +01:00
waltje
fa6ef13050 Moved the config-load code to pc.c, and (for now) disabled LoadConfig and SaveConfig menu items for non-Dev builds. 2017-11-20 01:58:32 -05:00
OBattler
7dbb5e1642 Several fixes - the Samsung SPC4200P works again, as do VLB graphics cards. 2017-11-19 20:33:25 +01:00
OBattler
b97aacdc70 Applied greatpsycho's latest changes (hopefully correctly). 2017-11-19 12:52:09 +01:00
waltje
181bca1644 General cleanup. 2017-11-18 21:29:25 -05:00
OBattler
d64c481952 Fixed taking screenshots with DirectDraw;
Reenabled minimizing the window - it no longer crashes the emulator.
2017-11-18 16:39:01 +01:00
OBattler
c63a41bed0 Moved mouse_emu_init(); to after serial_init(); again, should fix serial mice. 2017-11-10 20:33:15 +01:00
waltje
354b49d354 Re-integrated the Amstrad machines. 2017-11-08 16:30:13 -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
f5d4436672 Fixing some warnings (that may have caused bugs in s3_virge and voodoo) and other fixes. Removed Mingw64 makefile. 2017-11-03 03:16:11 -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
15538f1441 More portability changes, and some bugfixes found through that. 2017-10-27 20:54:53 -04:00
waltje
4eba751cb0 Interim cleanup with several small (but, as it turned out, fatal) bugs fixed. This commit mostly cleans the mouse code, but a second commit will finalize those changes. 2017-10-26 04:55:00 -04:00
waltje
fd432b8eb1 Minor cleanups dealing with plat, keyboard and mouse. 2017-10-25 05:30:41 -04:00
waltje
5abd25ba58 Cleaning up the "keyboard" module. Also general fixups here and there, and cleanups of earlier cleanups. 2017-10-24 22:10:30 -04:00
OBattler
659e07221d Commented out excess set_screen_size() logging in pc.c again. 2017-10-25 02:46:56 +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
1efbf0463a Merge branch 'master' of https://github.com/OBattler/86Box 2017-10-24 04:15:32 +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
waltje
cfb944e281 Cleaned up the mouse interface, added mouse support to VNC, and split off the VNC keymap to vnc_keymap.c with more documenting comments in that file so we can update it as we learn. 2017-10-23 05:20:30 -04:00
waltje
8890281b58 Minor cleanups. Logfile now has a header. We no longer log the entire config file, use -C (--dumpcfg) to enable that. 2017-10-21 20:29:18 -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
0659f5fe6a Whoops, and moved the config variables to pc.c. 2017-10-19 21:26:09 -04:00
waltje
1d60a99ea3 Another major change round. VNC moved to top level. More cleanups of global data, all VM processing now handled in pc.c (out of the platforms, yay!), and some video cleanups. This build MAY have issues with window sizes, resizing, and fullscreen will not work until the next build- sorry. 2017-10-19 04:28:59 -04:00
waltje
7f24ba9fe9 Another cleanup run. 2017-10-17 02:01:03 -04:00
waltje
fbd95451d2 Fixes (missed a few spots) for DYNAREC and propagated to Linux. 2017-10-14 22:51:49 -04:00
OBattler
1cfa8e2c4d The emulator can now be compiled without the recompiler by using the DYNAREC=n parameter with make;
The BIOS address is now selectable for the BusLogic ISA SCSI controllers.
2017-10-15 02:43:13 +02: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