mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 18:22:07 +00:00
@@ -487,6 +487,7 @@ enum {
|
||||
%type <constValue> const_3bit
|
||||
%type <expr> reloc_8bit
|
||||
%type <expr> reloc_8bit_no_str
|
||||
%type <expr> reloc_8bit_offset
|
||||
%type <expr> reloc_16bit
|
||||
%type <expr> reloc_16bit_no_str
|
||||
%type <constValue> sectiontype
|
||||
@@ -1344,6 +1345,16 @@ reloc_8bit_no_str : relocexpr_no_str {
|
||||
}
|
||||
;
|
||||
|
||||
reloc_8bit_offset : T_OP_ADD relocexpr {
|
||||
rpn_CheckNBit(&$2, 8);
|
||||
$$ = $2;
|
||||
}
|
||||
| T_OP_SUB relocexpr {
|
||||
rpn_UNNEG(&$$, &$2);
|
||||
rpn_CheckNBit(&$$, 8);
|
||||
}
|
||||
;
|
||||
|
||||
reloc_16bit : relocexpr {
|
||||
rpn_CheckNBit(&$1, 16);
|
||||
$$ = $1;
|
||||
@@ -1863,9 +1874,9 @@ z80_ld : z80_ld_mem
|
||||
| z80_ld_a
|
||||
;
|
||||
|
||||
z80_ld_hl : T_Z80_LD T_MODE_HL T_COMMA T_MODE_SP T_OP_ADD reloc_8bit {
|
||||
z80_ld_hl : T_Z80_LD T_MODE_HL T_COMMA T_MODE_SP reloc_8bit_offset {
|
||||
out_AbsByte(0xF8);
|
||||
out_RelByte(&$6, 1);
|
||||
out_RelByte(&$5, 1);
|
||||
}
|
||||
| T_Z80_LD T_MODE_HL T_COMMA reloc_16bit {
|
||||
out_AbsByte(0x01 | (REG_HL << 4));
|
||||
|
||||
@@ -220,6 +220,7 @@ jrlabel:
|
||||
add sp,$DB
|
||||
ld [$ABCD],sp
|
||||
ld hl,sp+$DB
|
||||
ld hl,sp-$25
|
||||
ld sp,hl
|
||||
|
||||
pop af
|
||||
@@ -243,8 +244,6 @@ jrlabel:
|
||||
nop
|
||||
scf
|
||||
stop
|
||||
BYTE = 0
|
||||
REPT 256
|
||||
FOR BYTE, 256
|
||||
stop BYTE
|
||||
BYTE = BYTE + 1
|
||||
ENDR
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user