Beispiel #1
0
        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);
        }