From f8b4cc52f6bd0cc2e06b531cd8a1a7daceefff9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonio=20Ni=C3=B1o=20D=C3=ADaz?= Date: Sun, 20 May 2018 20:56:21 +0100 Subject: [PATCH] rgbasm: Allow variations of 'ld [$FF00+c],a' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The following mnemonics are now valid: - ld - ldh - ldio The following are valid as operands: - [$ff00+c] - [$ff00 + c] - [c] This is done for consistency with 'ld [$FF00+n],a' and variations of it. Signed-off-by: Antonio Niño Díaz --- src/asm/asmy.y | 8 ++++++++ src/asm/globlex.c | 1 + 2 files changed, 9 insertions(+) diff --git a/src/asm/asmy.y b/src/asm/asmy.y index e0e89b07..901b500d 100644 --- a/src/asm/asmy.y +++ b/src/asm/asmy.y @@ -1707,6 +1707,14 @@ z80_ldio : T_Z80_LDIO T_MODE_A comma op_mem_ind $2.nVal &= 0xFF; out_RelByte(&$2); } + | T_Z80_LDIO T_MODE_A comma T_MODE_C_IND + { + out_AbsByte(0xF2); + } + | T_Z80_LDIO T_MODE_C_IND comma T_MODE_A + { + out_AbsByte(0xE2); + } ; z80_ld : z80_ld_mem diff --git a/src/asm/globlex.c b/src/asm/globlex.c index d03d5b23..b9d7e96d 100644 --- a/src/asm/globlex.c +++ b/src/asm/globlex.c @@ -312,6 +312,7 @@ const struct sLexInitString lexer_strings[] = { {"sp", T_MODE_SP}, {"[c]", T_MODE_C_IND}, {"[$ff00+c]", T_MODE_C_IND}, + {"[$ff00 + c]", T_MODE_C_IND}, {"a", T_TOKEN_A}, {"b", T_TOKEN_B},