public void CurrentAddressEvaluatesProperlyWithStartAddress() { // --- Arrange var assembler = new Z80Assembler(); assembler.Compile(""); assembler.GetCurrentAssemblyAddress(); assembler.CurrentSegment.StartAddress = 0x6800; assembler.EmitByte(0x00); assembler.EmitByte(0x00); // --- Act var exprNode = ParseExpr("$"); var result = assembler.Eval(exprNode); // --- Assert result.ShouldBe((ushort)0x6802); }