ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/rom_patches.cpp
(Generate patch)

Comparing BasiliskII/src/rom_patches.cpp (file contents):
Revision 1.5 by cebix, 1999-10-19T17:41:18Z vs.
Revision 1.7 by cebix, 1999-10-22T15:08:12Z

# Line 648 | Line 648 | void PatchAfterStartup(void)
648          r.d[0] = 0xa05c;
649          Execute68kTrap(0xa247, &r);             // SetOSTrapAddress()
650  
651 + #if SUPPORTS_EXTFS
652          // Install external file system
653          InstallExtFS();
654 + #endif
655   }
656  
657  
# Line 666 | Line 668 | bool CheckROM(void)
668          // Real addressing mode requires a 32-bit clean ROM
669          return ROMVersion == ROM_VERSION_32;
670   #else
671 <        // Virtual addressing mode works with 32-bit clean Mac II ROMs and Classic ROMs (experimental)
671 >        // Virtual addressing mode works with 32-bit clean Mac II ROMs and Classic ROMs
672          return (ROMVersion == ROM_VERSION_CLASSIC) || (ROMVersion == ROM_VERSION_32);
673   #endif
674   }
# Line 1401 | Line 1403 | static bool patch_rom_32(void)
1403          *wp++ = htons(M68K_EMUL_OP_MEMORY_DISPATCH);
1404          *wp = htons(M68K_RTS);
1405  
1406 + #if EMULATED_68K
1407 +        // Replace BlockMove()
1408 +        wp = (uint16 *)(ROMBaseHost + find_rom_trap(0xa02e));   // BlockMove()
1409 +        *wp++ = htons(M68K_EMUL_OP_BLOCK_MOVE);
1410 +        *wp++ = htons(0x7000);
1411 +        *wp = htons(M68K_RTS);
1412 + #endif
1413 +
1414          // Patch VIA interrupt handler
1415          wp = (uint16 *)(ROMBaseHost + 0x9bc4);  // Level 1 handler
1416          *wp++ = htons(0x7002);          // moveq        #2,d0 (always 60Hz interrupt)

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines