setSubList method
Set the buffer with this new start address and the step
Implementation
void setSubList(int startAddress, [int? endAddress, int step = 1]){
Map<int,int> newBuffer = {};
int length = buffer.length;
if(endAddress != null && endAddress < buffer.length){
length = endAddress;
}
if(!step.isNegative){
for(int i = 0x1000; i < length;i+=step){
if(buffer[i] != null){
newBuffer[i] = buffer[i]!;
}
}
}
else{
for(int i = 0x1000; i > length;i-=step){
if(buffer[i] != null){
newBuffer[i] = buffer[i]!;
}
}
}
buffer = newBuffer;
}