package de.bse.prgm.cmd.storage; import de.bse.prgm.cmd.HotspotCompiledCommand; import de.bse.run.app.IConsole; import de.bse.vm.Machine; import de.bse.vm.var.IVariable; /** * Write data to the EEPROM. * * @author Elias Groll * @version 2.15 */ public class Eeprom extends HotspotCompiledCommand { public Eeprom(String locationString, long[] values) { this.locationString = locationString; this.values = values; } private final String locationString; private IVariable location; private final long[] values; @Override public void execute(Machine machine, IConsole console) { super.execute(machine, console); if (location != null) { long tmp = location.getValue(); for (int i = 0; i < values.length; i++) { machine.getEeprom().write(tmp + i, values[i]); } } } @Override public String infoMsg() { return "[Info]Writing " + values.toString() + " at \"" + locationString + "\" to EEPROM"; } @Override public void init(Machine machine) { location = machine.parseIVariable(locationString); } }