Start moving relevant macros into macros/text.asm.

This commit is contained in:
yenatch 2015-01-20 14:10:55 -08:00
parent 0fa7b553bd
commit 9303752e3f
2 changed files with 93 additions and 94 deletions

View File

@ -8,18 +8,9 @@ INCLUDE "macros/movement.asm"
INCLUDE "macros/map.asm"
text EQUS "db $00," ; Start writing text.
next EQUS "db $4e," ; Move a line down.
line EQUS "db $4f," ; Start writing at the bottom line.
para EQUS "db $51," ; Start a new paragraph.
cont EQUS "db $55," ; Scroll to the next line.
done EQUS "db $57" ; End a text box.
prompt EQUS "db $58" ; Prompt the player to end a text box (initiating some other event).
; Pokedex text commands are only used with pokered.
; They are included for compatibility.
page EQUS "db $50," ; Start a new Pokedex page.
dex EQUS "db $e8, $50" ; End a Pokedex entry.
RGB: MACRO
dw ((\3) << 10) + ((\2) << 5) + (\1)
ENDM
percent EQUS "* $ff / 100"
@ -29,8 +20,22 @@ FarCall EQU $08
Bankswitch EQU $10
JumpTable EQU $28
farcall: MACRO ; bank, address
ld a, BANK(\1)
ld hl, \1
rst FarCall
ENDM
NONE EQU 0
callba EQUS "farcall"
callab: MACRO ; address, bank
ld hl, \1
ld a, BANK(\1)
rst FarCall
ENDM
NONE EQU 0
dwb: MACRO
@ -54,29 +59,22 @@ dbwww: MACRO
ENDM
dn: MACRO
rept _NARG / 2
db (\1) << 4 + (\2)
shift
shift
endr
ENDM
dt: MACRO ; three-byte (big-endian)
db (\1 >> 16) & $ff
db (\1 >> 8) & $ff
db \1 & $ff
db ((\1) >> 16) & $ff
db ((\1) >> 8) & $ff
db (\1) & $ff
ENDM
bigdw: MACRO ; big-endian word
dw ((\1)/$100) + (((\1)&$ff)*$100)
ENDM
callab: MACRO ; address, bank
ld hl, \1
ld a, BANK(\1)
rst FarCall
ENDM
callba: MACRO ; bank, address
ld a, BANK(\1)
ld hl, \1
rst FarCall
db (\1) / $100
db (\1) % $100
ENDM
@ -84,6 +82,40 @@ lb: MACRO ; r, hi, lo
ld \1, (\2) << 8 + (\3)
ENDM
bccoord: MACRO
coord bc, \1, \2
ENDM
decoord: MACRO
coord de, \1, \2
ENDM
hlcoord: MACRO
coord hl, \1, \2
ENDM
coord: MACRO
ld \1, TileMap + SCREEN_WIDTH * (\3) + (\2)
ENDM
; pic animations
frame: MACRO
db \1
db \2
ENDM
setrepeat: MACRO
db $fe
db \1
ENDM
dorepeat: MACRO
db $fd
db \1
ENDM
endanim: MACRO
db $ff
ENDM
; Constant enumeration
@ -97,24 +129,9 @@ const_value SET const_value + 1
ENDM
TX_RAM: MACRO
db 1
dw \1
ENDM
TX_FAR: MACRO
db $16
dw \1
db BANK(\1)
ENDM
RGB: MACRO
dw (((\3) << 10) | ((\2) << 5) | (\1))
ENDM
note: MACRO
db (\1) << 4 + ((\2) - 1)
dn (\1), (\2) - 1
ENDM
sound: macro
@ -145,36 +162,6 @@ A# EQU 11
B_ EQU 12
bccoord: MACRO
ld bc, TileMap + SCREEN_WIDTH * (\2) + (\1)
ENDM
decoord: MACRO
ld de, TileMap + SCREEN_WIDTH * (\2) + (\1)
ENDM
hlcoord: MACRO
ld hl, TileMap + SCREEN_WIDTH * (\2) + (\1)
ENDM
; pic animations
frame: MACRO
db \1
db \2
ENDM
setrepeat: MACRO
db $fe
db \1
ENDM
dorepeat: MACRO
db $fd
db \1
ENDM
endanim: MACRO
db $ff
ENDM
; maps
@ -193,20 +180,13 @@ roam_map: MACRO
; A map and an arbitrary number of some more maps.
map \1
db \2
db \2
IF \2 > 0
rept \2
map \3
ENDC
IF \2 > 1
map \4
ENDC
IF \2 > 2
map \5
ENDC
IF \2 > 3
map \6
ENDC
shift
endr
db 0
ENDM

View File

@ -1,7 +1,30 @@
text_from_ram: macro
text EQUS "db $00," ; Start writing text.
next EQUS "db $4e," ; Move a line down.
line EQUS "db $4f," ; Start writing at the bottom line.
para EQUS "db $51," ; Start a new paragraph.
cont EQUS "db $55," ; Scroll to the next line.
done EQUS "db $57" ; End a text box.
prompt EQUS "db $58" ; Prompt the player to end a text box (initiating some other event).
; Pokedex text commands are only used with pokered.
; They are included for compatibility.
page EQUS "db $50," ; Start a new Pokedex page.
dex EQUS "db $e8, $50" ; End a Pokedex entry.
TX_RAM: MACRO
db 1
dw \1
endm
ENDM
TX_FAR: MACRO
db $16
dw \1
db BANK(\1)
ENDM
text_from_ram EQUS "TX_RAM"
text_dunno1: macro
db 5
@ -58,8 +81,4 @@ current_day: macro
db $15
endm
text_jump: macro
db $16
dw \1
db BANK(\1)
endm
text_jump EQUS "TX_FAR"