From 1521cdcbda45c9ec59db630e08bd63f7d0596820 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Strohh=C3=A4cker?= Date: Sun, 9 Apr 2006 13:03:24 +0000 Subject: [PATCH] change swapInNextDisk Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2588 --- include/bios.h | 1 + src/ints/bios_disk.cpp | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/include/bios.h b/include/bios.h index d222ef2c..902e5525 100644 --- a/include/bios.h +++ b/include/bios.h @@ -159,6 +159,7 @@ extern DOS_DTA *imgDTA; void swapInDisks(void); void swapInNextDisk(void); +bool getSwapRequest(void); void BIOS_ZeroExtendedSize(bool in); void char_out(Bit8u chr,Bit32u att,Bit8u page); diff --git a/src/ints/bios_disk.cpp b/src/ints/bios_disk.cpp index 72f66a72..90c76b8d 100644 --- a/src/ints/bios_disk.cpp +++ b/src/ints/bios_disk.cpp @@ -16,7 +16,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $Id: bios_disk.cpp,v 1.27 2006-02-12 23:23:52 harekiet Exp $ */ +/* $Id: bios_disk.cpp,v 1.28 2006-04-09 13:03:24 c2woody Exp $ */ #include "dosbox.h" #include "callback.h" @@ -51,6 +51,7 @@ Bit16u imgDTASeg; RealPt imgDTAPtr; DOS_DTA *imgDTA; bool killRead; +static bool swapping_requested; void CMOS_SetRegister(Bitu regNr, Bit8u val); //For setting equipment word @@ -112,6 +113,12 @@ void swapInDisks(void) { } } +bool getSwapRequest(void) { + bool sreq=swapping_requested; + swapping_requested = false; + return sreq; +} + void swapInNextDisk(bool pressed) { if (!pressed) return; @@ -122,6 +129,7 @@ void swapInNextDisk(bool pressed) { swapPosition++; if(diskSwap[swapPosition] == NULL) swapPosition = 0; swapInDisks(); + swapping_requested = true; } @@ -492,4 +500,5 @@ void BIOS_SetupDisks(void) { MAPPER_AddHandler(swapInNextDisk,MK_f4,MMOD1,"swapimg","Swap Image"); killRead = false; + swapping_requested = false; }