shithub: rgbds

Download patch

ref: f8b4cc52f6bd0cc2e06b531cd8a1a7daceefff9d
parent: 748943f6fc036e1f3c9912071338e0a7ad461466
author: Antonio Niño Díaz <antonio_nd@outlook.com>
date: Sun May 20 16:56:21 EDT 2018

rgbasm: Allow variations of 'ld [$FF00+c],a'

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 <antonio_nd@outlook.com>

--- a/src/asm/asmy.y
+++ b/src/asm/asmy.y
@@ -1707,6 +1707,14 @@
 			$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
--- a/src/asm/globlex.c
+++ b/src/asm/globlex.c
@@ -312,6 +312,7 @@
 	{"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},