![]() ![]()
Saving beyond 8 KB will delete everything. Saving files will change the date/time settings. The device descriptor is really for 32 KB only and that causes a lot of weird errors. It still has only 8 KB NVRAM available and the clock only advances if you are in the player shell. It runs fine, but there is only 8 KB NVRAM. Remember, we want 32 KB of NVRAM and a working clock at the same time. fc /b did the binary comparison of the transferred files. The batch files utilized the cdilink downcopy (dc) and upcopy (uc) options transfer the save files. Luckily, Burn:Cycle allows an almost unlimited amount of save files by changing the suffix of the save file (BURNCYCLE_x). I collected save files from all my players and could only fill about 36% of the 32 KB NVRAM first. Checking RTC in shell/in game/after communicating with cdilink and after the player was switched off. Binary check of the downloaded and uploaded filesĩ. Uploading the contents of the NVRAM to the PCĨ. Playing Burn:Cycle (loading and saving files)ħ. Downloading a lot of files via batch script into NVRAM (32 KB = 95% / 8 KB = overloading)ĥ. Setting date/time in the shell (if necessary)Ĥ. Playing Earth Command (sensitive to missing RTC)ģ. With every ROM and both 8 and 32 KB NVRAM chips I ran a test protocol that included:Ģ. (EP)ROM and NVRAM chips ready for testing Testing The required values were taken from here (CRC-24/OS-9). It allows you to define custom CRC settings. ![]() Now the freeware hex editor HxD comes in handy. Value of any “patched” or modified module, or OS-9 cannot load the module from disk or find it in ROM.” (see The CRC Value on page 1-8 of the OS-9 2.4 Technical Manual.) However, there seems to be a catch: “OS-9 does not recognize a module with an incorrect CRC value. #Os/9 emulator mac macos macos9 driverAfter all, if the CDI220/60 with the same nvdrv device driver has both 32 KB NVRAM and a working RTC, why wouldn’t the CDI470/20, right? #Os/9 emulator mac macos macos9 PatchLet’s see if we can patch the nvr device descriptor. Patching the ROMsĪdditionally, I prepared some patched ROM files: #Os/9 emulator mac macos macos9 manualLuckily, the service manual gave me a hint for which EPROM to use: 27C400. Last, I needed a couple of CD-i player ROMs, but I really didn’t want to open up all my CD-i players and swap the chips during the tests. For the 32 KB, I used a combination of M5M5256DP and DS1216C, as described here. For the 8 KB NVRAM, I chose DS1643 over the original M48T08 TimeKeeper. Then, I attached a DPDT (double pole, double throw) toggle switch to the points shown below to keep the setup as flexible as possible. Having a good theoretical basis, I chose a player (CDI470/20 – Mono IV) that had nothing left to loose and repaired it. There are at least two more 774 Byte nvdrv modules and some more nvr modules with different content, but none of these are relevant for the experiment at the moment. Interesting: both 8 KB and 32 KB device descriptors use the same device driver. The modules with the same checksum are marked in the table above. The nvdrv modules are either 774 or 878 Bytes in size. The last three bytes contain the CRC-24 checksum, E9B44E in this case. Following to offset $50, there is the name of the driver: nvdrv. ![]() For example, at offset $3A is M$PDEV, the offset of the device driver name: $0050. With the information in Device Descriptor Modules on page 1-8 of the OS-9 2.4 Technical I/O Manual, we can dissect the module even further. $1FF8 = 8 KB (8192-8, reserving 8 Bytes for the RTC registers). PD_RSIZ field in the nvr device descriptorĮven though there are many different nvr modules, all of them use one of these values:ġ. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |