You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-09-08 08:13:02 -07:00
Move around some more macros.
This commit is contained in:
@@ -1,3 +1,5 @@
|
|||||||
|
NONE EQU 0
|
||||||
|
|
||||||
PARTY_LENGTH EQU 6
|
PARTY_LENGTH EQU 6
|
||||||
|
|
||||||
MAX_ITEMS EQU 20
|
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/move_anim.asm"
|
||||||
INCLUDE "macros/movement.asm"
|
INCLUDE "macros/movement.asm"
|
||||||
INCLUDE "macros/map.asm"
|
INCLUDE "macros/map.asm"
|
||||||
|
INCLUDE "macros/predef.asm"
|
||||||
|
INCLUDE "macros/rst.asm"
|
||||||
|
|
||||||
|
|
||||||
RGB: MACRO
|
RGB: MACRO
|
||||||
@@ -15,28 +17,6 @@ RGB: MACRO
|
|||||||
|
|
||||||
percent EQUS "* $ff / 100"
|
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
|
dwb: MACRO
|
||||||
dw \1
|
dw \1
|
||||||
@@ -82,6 +62,7 @@ lb: MACRO ; r, hi, lo
|
|||||||
ld \1, (\2) << 8 + (\3)
|
ld \1, (\2) << 8 + (\3)
|
||||||
ENDM
|
ENDM
|
||||||
|
|
||||||
|
|
||||||
bccoord: MACRO
|
bccoord: MACRO
|
||||||
coord bc, \1, \2
|
coord bc, \1, \2
|
||||||
ENDM
|
ENDM
|
||||||
@@ -129,68 +110,6 @@ const_value SET const_value + 1
|
|||||||
ENDM
|
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
|
sine_wave: MACRO
|
||||||
; \1: amplitude
|
; \1: amplitude
|
||||||
|
|
||||||
@@ -201,26 +120,3 @@ x = 0
|
|||||||
x = x + (\1) * $40000
|
x = x + (\1) * $40000
|
||||||
endr
|
endr
|
||||||
ENDM
|
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
|
person_event: macro
|
||||||
db \1 ; sprite
|
db \1 ; sprite
|
||||||
db \2 ; y
|
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
|
octave: macro
|
||||||
db $d8 - (\1)
|
db $d8 - (\1)
|
||||||
endm
|
endm
|
||||||
|
Reference in New Issue
Block a user