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

Comparing SheepShaver/src/rom_patches.cpp (file contents):
Revision 1.18 by gbeauche, 2003-12-04T17:26:35Z vs.
Revision 1.19 by gbeauche, 2003-12-05T12:37:14Z

# Line 1839 | Line 1839 | static bool patch_68k(void)
1839                  *lp = htonl(0x38600000);                // li   r3,0
1840          }
1841  
1842 +        // FIXME: Fake reading from [HpChk]+4 (the callchain reports some function from DriverServicesLib)
1843 +        if (1) {
1844 +                uint32 hpchk_offset = find_rom_resource(FOURCC('n','l','i','b'), 10);
1845 +                static const uint8 hpchk_dat[] = {0x80, 0x80, 0x03, 0x16, 0x94, 0x21, 0xff, 0xb0, 0x83, 0xc4, 0x00, 0x04};
1846 +                if ((base = find_rom_data(hpchk_offset, hpchk_offset + 0x3000, hpchk_dat, sizeof(hpchk_dat))) == 0) return false;
1847 +                D(bug("hpchk %08lx\n", base));
1848 +                lp = (uint32 *)(ROM_BASE + base);
1849 +                *lp = htonl(0x80800000 + XLM_ZERO_PAGE);                // lwz  r4,(zero page)
1850 +        }
1851 +
1852          // Patch Name Registry
1853          static const uint8 name_reg_dat[] = {0x70, 0xff, 0xab, 0xeb};
1854          if ((base = find_rom_data(0x300, 0x380, name_reg_dat, sizeof(name_reg_dat))) == 0) return false;
# Line 2186 | Line 2196 | void InstallDrivers(void)
2196  
2197   #if DISABLE_SCSI && 0
2198          // Fake SCSIGlobals
2199 <        static const uint8 fake_scsi_globals[32] = {0,};
2190 <        WriteMacInt32(0xc0c, (uint32)fake_scsi_globals);
2199 >        WriteMacInt32(0xc0c, SheepMem::ZeroPage());
2200   #endif
2201  
2202          // Open .Sony driver

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines