Read port 61h bit 6 as 1 for PC, 0 for PCjr/Tandy

This commit is contained in:
Allofich
2021-11-17 00:26:17 +09:00
parent 3a018d80cc
commit ce936e8016
2 changed files with 10 additions and 0 deletions

View File

@@ -94,6 +94,9 @@
hard drive delay, and make it slower than before
by default. It is adjustable via the "floppy drive
data rate limit" config option. (Allofich)
- Always return bit 6 of port 61h as set for PC and as
clear for PCjr and Tandy. Allows Zaxxon to load in
PC mode. (Allofich)
- Video emulation for PC-98 mode (for 400-line modes)
is now 16:10 instead of 4:3. 480-line PC-98 modes
are still 4:3. (joncampbell123)

View File

@@ -678,6 +678,13 @@ static Bitu read_p61(Bitu, Bitu) {
dbg = ((port_61_data & 0xF) |
((TIMER_GetOutput2() || (port_61_data&1) == 0)? 0x20:0) | // NTS: Timer 2 doesn't cycle if Port 61 gate turned off, and it becomes '1' when turned off
((fmod(PIC_FullIndex(),0.030) > 0.015)? 0x10:0));
// Always return bit 6 as set for a PC and as cleared for PCjr or Tandy. See https://www.vogons.org/viewtopic.php?t=50417.
if(machine == MCH_PCJR || machine == MCH_TANDY)
dbg &= 0xBF;
else
dbg |= 0x40;
return dbg;
}