You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
797 B
35 lines
797 B
4 years ago
|
namespace DMGHeader {
|
||
|
public class MemorySize {
|
||
|
private int _size;
|
||
|
|
||
|
public int Banks { get; private set; }
|
||
|
|
||
|
public int BankSize { get; }
|
||
|
|
||
|
public int Size {
|
||
|
get => _size;
|
||
|
set {
|
||
|
_size = value;
|
||
|
if(_size <= BankSize * 2)
|
||
|
Banks = 0;
|
||
|
else
|
||
|
Banks = _size / BankSize;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public MemorySize(int bankSize) {
|
||
|
BankSize = bankSize;
|
||
|
}
|
||
|
|
||
|
public override string ToString() {
|
||
|
var ret = $"{Size} KB ";
|
||
|
if(Banks == 0)
|
||
|
ret += "(no bank switching)";
|
||
|
else
|
||
|
ret += $"({Banks} banks of {BankSize} KB each)";
|
||
|
|
||
|
return ret;
|
||
|
}
|
||
|
}
|
||
|
}
|