mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
Move around some more macros.
This commit is contained in:
parent
9303752e3f
commit
f036cdf13b
@ -1,3 +1,5 @@
|
||||
NONE EQU 0
|
||||
|
||||
PARTY_LENGTH EQU 6
|
||||
|
||||
MAX_ITEMS EQU 20
|
||||
|
110
macros.asm
110
macros.asm
@ -6,6 +6,8 @@ INCLUDE "macros/move_effect.asm"
|
||||
INCLUDE "macros/move_anim.asm"
|
||||
INCLUDE "macros/movement.asm"
|
||||
INCLUDE "macros/map.asm"
|
||||
INCLUDE "macros/predef.asm"
|
||||
INCLUDE "macros/rst.asm"
|
||||
|
||||
|
||||
RGB: MACRO
|
||||
@ -15,28 +17,6 @@ RGB: MACRO
|
||||
|
||||
percent EQUS "* $ff / 100"
|
||||
|
||||
; macros require rst vectors to be defined
|
||||
FarCall EQU $08
|
||||
Bankswitch EQU $10
|
||||
JumpTable EQU $28
|
||||
|
||||
farcall: MACRO ; bank, address
|
||||
ld a, BANK(\1)
|
||||
ld hl, \1
|
||||
rst FarCall
|
||||
ENDM
|
||||
|
||||
callba EQUS "farcall"
|
||||
|
||||
callab: MACRO ; address, bank
|
||||
ld hl, \1
|
||||
ld a, BANK(\1)
|
||||
rst FarCall
|
||||
ENDM
|
||||
|
||||
|
||||
NONE EQU 0
|
||||
|
||||
|
||||
dwb: MACRO
|
||||
dw \1
|
||||
@ -82,6 +62,7 @@ lb: MACRO ; r, hi, lo
|
||||
ld \1, (\2) << 8 + (\3)
|
||||
ENDM
|
||||
|
||||
|
||||
bccoord: MACRO
|
||||
coord bc, \1, \2
|
||||
ENDM
|
||||
@ -129,68 +110,6 @@ const_value SET const_value + 1
|
||||
ENDM
|
||||
|
||||
|
||||
|
||||
note: MACRO
|
||||
dn (\1), (\2) - 1
|
||||
ENDM
|
||||
|
||||
sound: macro
|
||||
db \1 ; duration
|
||||
db \2 ; intensity
|
||||
dw \3 ; frequency
|
||||
endm
|
||||
|
||||
noise: macro
|
||||
db \1 ; duration
|
||||
db \2 ; intensity
|
||||
db \3 ; frequency
|
||||
endm
|
||||
|
||||
; pitch
|
||||
__ EQU 0
|
||||
C_ EQU 1
|
||||
C# EQU 2
|
||||
D_ EQU 3
|
||||
D# EQU 4
|
||||
E_ EQU 5
|
||||
F_ EQU 6
|
||||
F# EQU 7
|
||||
G_ EQU 8
|
||||
G# EQU 9
|
||||
A_ EQU 10
|
||||
A# EQU 11
|
||||
B_ EQU 12
|
||||
|
||||
|
||||
|
||||
; maps
|
||||
|
||||
map: MACRO
|
||||
; This is a really silly hack to get around an rgbds bug.
|
||||
|
||||
; Ideally:
|
||||
; db GROUP_\1, MAP_\1
|
||||
|
||||
\1\@ EQUS "GROUP_\1"
|
||||
\1\@2 EQUS "MAP_\1"
|
||||
db \1\@, \1\@2
|
||||
ENDM
|
||||
|
||||
roam_map: MACRO
|
||||
; A map and an arbitrary number of some more maps.
|
||||
|
||||
map \1
|
||||
db \2
|
||||
|
||||
rept \2
|
||||
map \3
|
||||
shift
|
||||
endr
|
||||
|
||||
db 0
|
||||
ENDM
|
||||
|
||||
|
||||
sine_wave: MACRO
|
||||
; \1: amplitude
|
||||
|
||||
@ -201,26 +120,3 @@ x = 0
|
||||
x = x + (\1) * $40000
|
||||
endr
|
||||
ENDM
|
||||
|
||||
|
||||
add_predef: MACRO
|
||||
\1Predef::
|
||||
dw \1
|
||||
db BANK(\1)
|
||||
ENDM
|
||||
|
||||
predef_id: MACRO
|
||||
; Some functions load the predef id
|
||||
; without immediately calling Predef.
|
||||
ld a, (\1Predef - PredefPointers) / 3
|
||||
ENDM
|
||||
|
||||
predef: MACRO
|
||||
predef_id \1
|
||||
call Predef
|
||||
ENDM
|
||||
|
||||
predef_jump: MACRO
|
||||
predef_id \1
|
||||
jp Predef
|
||||
ENDM
|
||||
|
@ -1,3 +1,29 @@
|
||||
map: MACRO
|
||||
; This is a silly hack to get around an rgbds bug.
|
||||
|
||||
; Ideally:
|
||||
; db GROUP_\1, MAP_\1
|
||||
|
||||
\1\@ EQUS "GROUP_\1"
|
||||
\1\@2 EQUS "MAP_\1"
|
||||
db \1\@, \1\@2
|
||||
ENDM
|
||||
|
||||
roam_map: MACRO
|
||||
; A map and an arbitrary number of some more maps.
|
||||
|
||||
map \1
|
||||
db \2
|
||||
|
||||
rept \2
|
||||
map \3
|
||||
shift
|
||||
endr
|
||||
|
||||
db 0
|
||||
ENDM
|
||||
|
||||
|
||||
person_event: macro
|
||||
db \1 ; sprite
|
||||
db \2 ; y
|
||||
|
21
macros/predef.asm
Normal file
21
macros/predef.asm
Normal file
@ -0,0 +1,21 @@
|
||||
add_predef: MACRO
|
||||
\1Predef::
|
||||
dw \1
|
||||
db BANK(\1)
|
||||
ENDM
|
||||
|
||||
predef_id: MACRO
|
||||
; Some functions load the predef id
|
||||
; without immediately calling Predef.
|
||||
ld a, (\1Predef - PredefPointers) / 3
|
||||
ENDM
|
||||
|
||||
predef: MACRO
|
||||
predef_id \1
|
||||
call Predef
|
||||
ENDM
|
||||
|
||||
predef_jump: MACRO
|
||||
predef_id \1
|
||||
jp Predef
|
||||
ENDM
|
17
macros/rst.asm
Normal file
17
macros/rst.asm
Normal file
@ -0,0 +1,17 @@
|
||||
FarCall EQU $08
|
||||
Bankswitch EQU $10
|
||||
JumpTable EQU $28
|
||||
|
||||
farcall: MACRO ; bank, address
|
||||
ld a, BANK(\1)
|
||||
ld hl, \1
|
||||
rst FarCall
|
||||
ENDM
|
||||
|
||||
callba EQUS "farcall"
|
||||
|
||||
callab: MACRO ; address, bank
|
||||
ld hl, \1
|
||||
ld a, BANK(\1)
|
||||
rst FarCall
|
||||
ENDM
|
@ -1,3 +1,35 @@
|
||||
note: MACRO
|
||||
dn (\1), (\2) - 1
|
||||
ENDM
|
||||
|
||||
sound: macro
|
||||
db \1 ; duration
|
||||
db \2 ; intensity
|
||||
dw \3 ; frequency
|
||||
endm
|
||||
|
||||
noise: macro
|
||||
db \1 ; duration
|
||||
db \2 ; intensity
|
||||
db \3 ; frequency
|
||||
endm
|
||||
|
||||
; pitch
|
||||
__ EQU 0
|
||||
C_ EQU 1
|
||||
C# EQU 2
|
||||
D_ EQU 3
|
||||
D# EQU 4
|
||||
E_ EQU 5
|
||||
F_ EQU 6
|
||||
F# EQU 7
|
||||
G_ EQU 8
|
||||
G# EQU 9
|
||||
A_ EQU 10
|
||||
A# EQU 11
|
||||
B_ EQU 12
|
||||
|
||||
|
||||
octave: macro
|
||||
db $d8 - (\1)
|
||||
endm
|
||||
|
Loading…
Reference in New Issue
Block a user