25 public DynamicArray<byte>
Data = [];
29 public byte Read(
int address) {
31 && address <
Data.Count) {
32 return Data.Array[address];
37 public void Write(
int address,
byte data) {
39 && address <
Data.Count) {
40 Data.Array[address] = data;
46 Data.Array[address] = data;
53 string[] array = data.Split([
';'], StringSplitOptions.RemoveEmptyEntries);
54 if (array.Length >= 1) {
55 string text = array[0];
56 text = text.TrimEnd(
'0');
58 for (
int i = 0; i <
MathUtils.
Min(text.Length, 256); i++) {
59 int num =
m_hexChars.IndexOf(
char.ToUpperInvariant(text[i]));
66 if (array.Length >= 2) {
67 string text2 = array[1];
68 int num2 =
m_hexChars.IndexOf(
char.ToUpperInvariant(text2[0]));
79 StringBuilder stringBuilder =
new();
81 for (
int i = 0; i <
Data.Count; i++) {
82 if (
Data.Array[i] != 0) {
86 for (
int j = 0; j < num; j++) {
87 int index = Math.Clamp((
int)
Data.Array[j], 0, 15);
91 stringBuilder.Append(
';');
94 return stringBuilder.ToString();
static int Min(int x1, int x2)
static int Max(int x1, int x2)
void Write(int address, byte data)
string SaveString(bool saveLastOutput)
DynamicArray< byte > Data
static List< char > m_hexChars
void LoadString(string data)