From 7e61ef9584d9ca67f7cd51a1adbe9a41ee093cc9 Mon Sep 17 00:00:00 2001 From: mpohoreski Date: Thu, 4 Sep 2008 16:42:14 +0000 Subject: [PATCH] using new enum for IO slot size bugfix: controller hack fix was hard-coded to slot 6 --- AppleWin/source/Disk.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/AppleWin/source/Disk.cpp b/AppleWin/source/Disk.cpp index e2e06259..312ed013 100644 --- a/AppleWin/source/Disk.cpp +++ b/AppleWin/source/Disk.cpp @@ -736,9 +736,10 @@ bool DiskDriveSwap() static BYTE __stdcall Disk_IORead(WORD pc, BYTE addr, BYTE bWrite, BYTE d, ULONG nCyclesLeft); static BYTE __stdcall Disk_IOWrite(WORD pc, BYTE addr, BYTE bWrite, BYTE d, ULONG nCyclesLeft); +// TODO: LoadRom_Disk_Floppy() void DiskLoadRom(LPBYTE pCxRomPeripheral, UINT uSlot) { - const UINT DISK2_FW_SIZE = 256; + const UINT DISK2_FW_SIZE = APPLE_SLOT_SIZE; HRSRC hResInfo = FindResource(NULL, MAKEINTRESOURCE(IDR_DISK2_FW), "FIRMWARE"); if(hResInfo == NULL) @@ -759,9 +760,9 @@ void DiskLoadRom(LPBYTE pCxRomPeripheral, UINT uSlot) memcpy(pCxRomPeripheral + uSlot*256, pData, DISK2_FW_SIZE); // TODO/FIXME: HACK! REMOVE A WAIT ROUTINE FROM THE DISK CONTROLLER'S FIRMWARE - *(pCxRomPeripheral+0x064C) = 0xA9; - *(pCxRomPeripheral+0x064D) = 0x00; - *(pCxRomPeripheral+0x064E) = 0xEA; + *(pCxRomPeripheral + (uSlot*256) + 0x4C) = 0xA9; + *(pCxRomPeripheral + (uSlot*256) + 0x4D) = 0x00; + *(pCxRomPeripheral + (uSlot*256) + 0x4E) = 0xEA; //