package uk.jordandoyle.titan.service; import uk.jordandoyle.titan.asm.Assembly; import javax.inject.Inject; import java.io.IOException; import java.nio.file.Files; import java.nio.file.Paths; import java.util.ArrayDeque; import java.util.Deque; import java.util.stream.Collectors; import java.util.stream.Stream; public class TitanService { private Assembly asm; private byte[] memory = new byte[0xFFFF]; private byte[] registers = new byte[0xF]; private Deque stack = new ArrayDeque<>(); @Inject private TitanService(Assembly asm) { this.asm = asm; } public void run() { try (Stream stream = Files.lines(Paths.get("~/asm"))) { String hex = stream.map(s -> s.split(" : ")[1]).collect(Collectors.joining("")); System.out.println(hex); this.asm.parseString(hex); } catch (IOException | InstantiationException | IllegalAccessException e) { e.printStackTrace(); } } }