| 2228 |
lp = (uint32 *)(ROM_BASE + ntohl(*lp)); |
lp = (uint32 *)(ROM_BASE + ntohl(*lp)); |
| 2229 |
lp[0xa9fd & 0x3ff] = htonl(GET_SCRAP_PATCH_SPACE); |
lp[0xa9fd & 0x3ff] = htonl(GET_SCRAP_PATCH_SPACE); |
| 2230 |
|
|
|
#if __BEOS__ |
|
| 2231 |
// Patch SynchIdleTime() |
// Patch SynchIdleTime() |
| 2232 |
if (PrefsFindBool("idlewait")) { |
if (PrefsFindBool("idlewait")) { |
| 2233 |
wp = (uint16 *)(ROM_BASE + find_rom_trap(0xabf7) + 4); // SynchIdleTime() |
wp = (uint16 *)(ROM_BASE + find_rom_trap(0xabf7) + 4); // SynchIdleTime() |
| 2234 |
D(bug("SynchIdleTime at %08lx\n", wp)); |
D(bug("SynchIdleTime at %08lx\n", wp)); |
| 2235 |
if (ntohs(*wp) == 0x2078) { |
if (ntohs(*wp) == 0x2078) { // movea.l ExpandMem,a0 |
| 2236 |
*wp++ = htons(M68K_EMUL_OP_IDLE_TIME); |
*wp++ = htons(M68K_EMUL_OP_IDLE_TIME); |
| 2237 |
*wp = htons(M68K_NOP); |
*wp = htons(M68K_NOP); |
| 2238 |
} else { |
} |
| 2239 |
|
else if (ntohs(*wp) == 0x70fe) // moveq #-2,d0 |
| 2240 |
|
*wp++ = htons(M68K_EMUL_OP_IDLE_TIME_2); |
| 2241 |
|
else { |
| 2242 |
D(bug("SynchIdleTime patch not installed\n")); |
D(bug("SynchIdleTime patch not installed\n")); |
| 2243 |
} |
} |
| 2244 |
} |
} |
|
#endif |
|
| 2245 |
|
|
| 2246 |
// Construct list of all sifters used by sound components in ROM |
// Construct list of all sifters used by sound components in ROM |
| 2247 |
D(bug("Searching for sound components with type sdev in ROM\n")); |
D(bug("Searching for sound components with type sdev in ROM\n")); |