using System; using System.Collections.Generic; using System.Text; namespace DSDecmp { /// /// Class for I/O-related utility methods. /// public static class IOUtils { /// /// Returns a 4-byte unsigned integer as used on the NDS converted from four bytes /// at a specified position in a byte array. /// /// The source of the data. /// The location of the data in the source. /// The indicated 4 bytes converted to uint public static uint ToNDSu32(byte[] buffer, int offset) { return (uint)(buffer[offset] | (buffer[offset + 1] << 8) | (buffer[offset + 2] << 16) | (buffer[offset + 3] << 24)); } /// /// Converts a u32 value into a sequence of bytes that would make ToNDSu32 return /// the given input value. /// public static byte[] FromNDSu32(uint value) { return new byte[] { (byte)(value & 0xFF), (byte)((value >> 8) & 0xFF), (byte)((value >> 16) & 0xFF), (byte)((value >> 24) & 0xFF) }; } } }