Commit Graph

8413 Commits

Author SHA1 Message Date
OBattler
b956c5f6f5 Added missing variable declarations in pc87306.c;
Both PIIX IDE bus masters now initialize with IRQ set to 14 rather than not set.
2016-09-22 21:33:14 +02:00
OBattler
6318e2bb17 Rewritten parts of the 86F handler to minimize false CRC errors and misidentification of sectors;
Replaced IMG handler with one that now proxies to the 86F handler;
Applies the remaining Mainline PCem speedup commit;
Fixed the National Semiconductors PC87306 Super I/O Chip's serial port IRQ assignment;
DMF images are now loaded with the correct sector interleave, improving read/write speed;
XDF images are now loaded in a way that emulates the real order of the sectors on the track, improving read/write speed;
Added 16-bit physical memory read/write routines (mem_phys_readw, mem_phys_writew) and modified the 16-bit DMA code to use them instead of two 8-bit reads/writes.
2016-09-22 21:22:56 +02:00
OBattler
0ae428b5f5 Fixed handling of DMF IMG images;
Fixed 3.5" 2ED XDF structure;
Applied mainline PCem big recompiler speedup (up to 20% seen) commit;
Added support for floppy drive swapping with the Winbond W3877F Super I/O chip.
2016-09-17 20:22:02 +02:00
OBattler
7be9a3c9c4 Disabled more stuff in case "No joystick" is selected. 2016-09-16 03:04:05 +02:00
OBattler
ecd425a9c6 Do not initialize the gameport at all if the "No joystick" option is selected. 2016-09-16 02:46:25 +02:00
OBattler
4b5eb91e6e Fixed a compile-breaking typo in gameport.c . 2016-09-16 02:37:04 +02:00
OBattler
bd2641a033 Added a "No joystick" option. 2016-09-16 02:32:25 +02:00
OBattler
a0f6257c36 The CD-ROM now correctly identifies as supporting DMA. 2016-09-15 14:32:26 +02:00
OBattler
176f0e5f43 Merge pull request #16 from MoochMcGee/vanilla
Add busmastering DMA for ATAPI drives
2016-09-15 14:22:24 +02:00
Melissa Goad
090c4c9545 Add busmastering DMA for ATAPI drives 2016-09-15 01:08:45 -05:00
OBattler
4896dfcfb4 86F write handler now correctly only writes 1 GAP3 byte and just pulses through the rest. 2016-09-15 03:59:49 +02:00
OBattler
cdfba37ea9 Applied all mainline PCem commits;
Fixed behavior of the FDC RECALIBRATE command for FDC's on certain Super I/O chips;
Several 86F-related fixes;
Added the Intel Advanced/ML (430HX, Socket 7, currently with non-working Flash) and Intel Advanced/ATX (430FX, Socket 7, works perfectly) motherboards;
Fixed handling of DENSEL when the FDC is in National Semiconductors PC87306 mode;
Brought 440FX initialization PCI parameters in line with Bochs;
Brought PIIX3 initialization PCI parameters in line with QEMU.
2016-09-14 23:18:14 +02:00
OBattler
264859a574 86F format handler now sets per-side flags also for 86F version 1.20. 2016-09-08 00:04:04 +02:00
OBattler
65d18aac26 Changed all dword and UINT4 data types in disc_random.c to uint32_t. 2016-09-07 21:09:45 +02:00
OBattler
2982681247 Fixed calls to d86f_poll_data() with too few parameters. 2016-09-07 21:05:19 +02:00
OBattler
abd77b0001 Added index_hole_pos to the 86F struct. 2016-09-07 21:03:46 +02:00
OBattler
c6c6fe8e2d Added support for version 1.20 of the 86F format;
Hopefully made the 86F handler for the FDC READ TRACK command work correctly.
2016-09-07 20:59:08 +02:00
OBattler
a43004aebe 86F and IMG handler now account for possible floppy drive swap when getting the drive's current RPM;
The RWC setting is now ignored when the FDC is not in enhanced mode.
2016-09-07 03:00:52 +02:00
OBattler
5a2ba3b53b Sector ID check is now only processed if the bitcell period matches. 2016-09-07 01:02:21 +02:00
OBattler
2104195b13 Fixed a bug in the 86F poller when reading the sector ID. 2016-09-07 01:00:18 +02:00
OBattler
0ada60b242 d86f_get_array_size() now actually returns the size according to the hole field, should fix handling of 86F version 1.10 files;
Temporary sector ID field in 86F poller now set to invalid after transferring the value to the last found sector field.
2016-09-07 00:40:29 +02:00
OBattler
b90c7d2a68 More FDC commands now correctly set FDC head;
Fixed a big in 86F read/write find sector state handler.
2016-09-06 23:52:08 +02:00
OBattler
ad9966f27f 86F handler now only expected one side parameter byte per track for single-sided images;
FDC FORMAT command now sets drive head.
2016-09-06 02:17:05 +02:00
OBattler
f5e096aa12 The side_flags array is now part of the 86F struct. 2016-09-05 22:10:04 +02:00
OBattler
c192c015a5 Version now part of the 86F struct, should fix compile. 2016-09-05 22:03:33 +02:00
OBattler
23325e16a1 Added support for version 1.10 of the .86F format;
Floppy drive head now set to 0 on drive eject/load;
FDC result phase now returns head from HDSEL.
2016-09-05 21:58:28 +02:00
OBattler
0b1c2c3a6a Fixed a compile-breaking error in disc_fdi.c. 2016-09-05 20:58:30 +02:00
OBattler
21d813cc34 The side processed by poller is now correctly selected by the FDC's HDSEL parameter rather than the H field of the requested sector ID. 2016-09-05 20:53:46 +02:00
OBattler
9eb7ac74bc Floppy disk loader now only sets the disk changed flag after the seek. 2016-09-05 20:43:12 +02:00
OBattler
652a602967 Attempt to fix the floppy disk change fix. 2016-09-05 20:34:10 +02:00
OBattler
c081716668 Applied mainline PCem commit: Force re-seek on disc loading - fixes issues with disc change not seen on some models. 2016-09-04 23:28:17 +02:00
OBattler
b7f65469b3 86F track flags handler now gets correct floppy drive type flags. 2016-09-04 22:20:32 +02:00
OBattler
04287af0ee 86F handler now correctly refuses to format at a rate not valid for the disk's hole;
250kbps/300rpm and 300kbps/360rpm 86F images are really treated as equivalent.
2016-09-04 19:37:08 +02:00
OBattler
c74889b219 Removed debug switch from the 32-bit makefile. 2016-09-04 16:14:32 +02:00
OBattler
2c12ba685e Both .86F and .IMG handlers now handle 40-track media correctly on 80-track drives with double stepping. 2016-09-04 03:50:06 +02:00
OBattler
19f86aa72d Rewrite of .86F handling code; Applied TheCollector1995's hardware cursor fix. 2016-09-03 18:07:46 +02:00
OBattler
8ae932fe80 Cleaned up disc_86f.c a bit. 2016-09-01 21:50:27 +02:00
OBattler
ac3efec163 Increased maximum floppy tracks to 43/86. 2016-09-01 20:01:34 +02:00
OBattler
88379ee845 .86F floppy image handler can now format tracks not present in the file by adding them to the file. 2016-09-01 18:52:23 +02:00
OBattler
1ddad56c8c Added support for the D86F floppy image format I invented that allows things not possible with IMG images;
Applied all mainline PCem commits;
Settings dialog now says 86Box instead of PCem;
Manifest renamed from PCem to 86Box.
2016-08-31 22:49:56 +02:00
OBattler
d860ea79ed Timer enable switches are 64-bit;
Floppy reads/writes now correctly finish at gaps;
Sector-based reads/writes no longer cause a delay when signaling finish.
2016-08-21 03:42:24 +02:00
OBattler
a924f37f43 Rewrote the disc sector poller again for simplified code and more accuracy;
Floppy formats are now accurately timed and also more accurately implemented;
Applied all mainline PCem commits.
2016-08-20 03:40:12 +02:00
OBattler
24a6ab13fb Bugfixes. 2016-08-16 00:00:18 +02:00
OBattler
9b5f030af7 Fixed some compile-breaking errors. 2016-08-15 23:40:02 +02:00
OBattler
e9c97afb0b Increased the remaining sound timer counters and latches to 64-bit;
Applied mainline PCem commit;
Intel Flash fixes.
2016-08-15 23:33:51 +02:00
OBattler
3b00a90f28 PIT latches are now 64-bit;
Pro Audio Spectrum 16 PIT latches are now 64-bit;
Pro Audio Spectrum now works better, patch from TheCollector1995;
AD1848 timer counter and latch are now 64-bit.
2016-08-15 20:17:30 +02:00
OBattler
e741f3cbd8 More title-related fixes. 2016-08-15 07:15:41 +02:00
OBattler
83687000a4 Fixed minor bug with the title in win.c. 2016-08-15 06:50:44 +02:00
OBattler
2fe61f739b Merge branch 'master' of https://github.com/OBattler/PCem-Experimental 2016-08-15 06:33:24 +02:00
OBattler
2189f9bfbf Replaced the icon with a public domain icon from Wikimedia Commons. 2016-08-15 06:32:51 +02:00