static List <string> FindInRom(byte[] searchTerm, int dataOffset, int dataLength) { var spots = new ByteArrayStream(Rom.ROM) .FindAll(searchTerm) .Select(x => new { Address = x.Address + Rom.AddressOffset, DataAddress = x.Address + Rom.AddressOffset + dataOffset, Data = x.GetBytes(dataLength, x.Address + dataOffset) }); var lines = spots .Select(x => $"{x.Address.ToString("x6", CultureInfo.InvariantCulture)} -- {x.DataAddress.ToString("x6", CultureInfo.InvariantCulture)} -- {string.Join(" ", x.Data.Select(y => y.ToString("x2", CultureInfo.InvariantCulture)))}" ); return(lines.ToList()); }