private void ReadCharLookup() { Settings.CharLookup = new Dictionary<short, string>(); // Build a lookup table from the font metadata IBinaryReader sjisReader = new BinaryReader(Source, true); sjisReader.Position = Settings.BankAddresses["MainFont"]; for (int i = 0; i < 7332; i++) { byte[] sjis = sjisReader.ReadByteArray(2); sjisReader.Position += 20; string value = sjisEncoding.GetString(sjis); Settings.CharLookup.Add((short)i, value); } }
private void ReadEncodingPadData() { BinaryReader reader = new BinaryReader(Source); ScriptEncodingParameters encodingParameters = Settings.ScriptEncoding; reader.Position = encodingParameters.EvenPadAddress; encodingParameters.EvenPad = reader.ReadByteArray(encodingParameters.EvenPadModulus); reader.Position = encodingParameters.OddPadAddress; encodingParameters.OddPad = reader.ReadByteArray(encodingParameters.OddPadModulus); }