diff options
author | Rangi <remy.oukaour+rangi42@gmail.com> | 2020-09-22 18:41:53 -0400 |
---|---|---|
committer | Rangi <remy.oukaour+rangi42@gmail.com> | 2020-09-22 18:41:53 -0400 |
commit | ddb9dd0e5440ab51613ef9e70289a1627a45cf8c (patch) | |
tree | 82fc47d72a5d531891dbd56c2a2a3a4773a12865 /include/code_macros.inc | |
parent | 4114684e53cb26119761921228fe6aba3cbf6ed9 (diff) |
Split up macros.inc
Diffstat (limited to 'include/code_macros.inc')
-rw-r--r-- | include/code_macros.inc | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/include/code_macros.inc b/include/code_macros.inc new file mode 100644 index 0000000..531281d --- /dev/null +++ b/include/code_macros.inc @@ -0,0 +1,54 @@ +lb: macro + ld \1, ((\2) & $ff) << 8 | ((\3) & $ff) +endm + +ln: macro + ld \1, ((\2) & $f) << 4 | ((\3) & $f) +endm + +ld16: macro + ld a, LOW(\2) + ld [\1 + 0], a + ld a, HIGH(\2) + ld [\1 + 1], a +endm + + +farcall: macro + push af + ld a, LOW(\1) + ld [w_farcall_target + 0], a + ld a, HIGH(\1) + ld [w_farcall_target + 1], a + ld a, BANK(\1) + ld [w_bank_temp], a + pop af + call _farcall +endm + +farjp: macro + push af + ld a, LOW(\1) + ld [w_farcall_target + 0], a + ld a, HIGH(\1) + ld [w_farcall_target + 1], a + ld a, BANK(\1) + ld [w_bank_temp], a + pop af + jp _farjp +endm + + +push_bank_rom: macro + ld a, [w_bank_rom] + push af + ld a, \1 + ld [w_bank_rom], a + ld [rROMB0], a +endm + +pop_bank_rom: macro + pop af + ld [w_bank_rom], a + ld [rROMB0], a +endm |