From 0b34c997d6b24ff3b229396c2b8351f08a132410 Mon Sep 17 00:00:00 2001 From: Remy Oukaour Date: Tue, 12 Dec 2017 13:51:07 -0500 Subject: [PATCH] Add basic documentation for text commands. --- ...cripting_commands.md => event_commands.md} | 2 +- docs/map_scripts.md | 15 +- docs/text_commands.md | 131 ++++++++++++++++++ macros/text.asm | 2 +- 4 files changed, 141 insertions(+), 9 deletions(-) rename docs/{scripting_commands.md => event_commands.md} (99%) create mode 100644 docs/text_commands.md diff --git a/docs/scripting_commands.md b/docs/event_commands.md similarity index 99% rename from docs/scripting_commands.md rename to docs/event_commands.md index 32ba7d338..662159481 100644 --- a/docs/scripting_commands.md +++ b/docs/event_commands.md @@ -1,4 +1,4 @@ -# Scripting Commands +# Event Commands ## `$00`: `scall` *script* diff --git a/docs/map_scripts.md b/docs/map_scripts.md index e259638dd..e7138c4c8 100644 --- a/docs/map_scripts.md +++ b/docs/map_scripts.md @@ -19,18 +19,19 @@ - **`dbw` *type*, *script*** -## Scripts +## Event scripts -[Scripting commands](docs/scripting_commands.md) +[Event commands](docs/event_commands.md) ## Text -- **`text`** -- **`line`** -- **`cont`** -- **`para`** -- **`done`** +[Text commands](docs/text_commands.md) + + +## Movement data + +[Movement commands](docs/movement_commands.md) ## `MapName_MapEventHeader:` diff --git a/docs/text_commands.md b/docs/text_commands.md new file mode 100644 index 000000000..3d502f399 --- /dev/null +++ b/docs/text_commands.md @@ -0,0 +1,131 @@ +# Text Commands + +## `$00`: `text` *text* + +Start writing text until `"@"`. + +## `$4E`: `next` *text* + +Move a line down. + +## `$4F`: `line` *text* + +Start writing at the bottom line. + +## `$50`: `page` *text* + +Start a new Pokédex page. + +## `$51`: `para` *text* + +Start a new paragraph. + +## `$55`: `cont` *text* + +Scroll to the next line. + +## `$57`: `done` + +End a text box. + +## `$58`: `prompt` + +Prompt the player to end a text box (initiating some other event). + +## `$01`: `text_from_ram` *address* + +Write text from a RAM address. + +## `$02`: `text_bcd` *address*, *flags* + +Write [BCD](https://en.wikipedia.org/wiki/Binary-coded_decimal) from an address, +typically RAM. + +## `$03`: `text_move` *address* + +Move to a new tile. + +## `$04`: `text_box` *address*, *height*, *width* + +Draw a box. + +## `$05`: `text_low` + +Write text at (1, 16). + +## `$06`: `text_waitbutton` + +Wait for button press; show arrow. + +## `$07`: `text_scroll` + +Pushes text up two lines and sets the `bc` cursor to the border tile below the +first character column of the text box. + +## `$08`: `start_asm` + +Start interpreting assembly code. + +## `$09`: `deciram` *address*, *bytes*, *digits* + +Read *bytes* bytes from *address* and print them as a *digits*-digit number. + +## `$0A`: `interpret_data` + +Exit. + +## `$0B`: `sound_dex_fanfare_50_79` + +Play `SFX_DEX_FANFARE_50_79`. + +## `$0C`: `limited_interpret_data` *number* + +Print *number* `"…"`s. + +## `$0D`: `link_wait_button` + +Wait for button press; show arrow. + +## `$0E`: `sound_dex_fanfare_20_49` + +Play `SFX_DEX_FANFARE_20_49`. + +## `$0F`: `sound_item` + +Play `SFX_ITEM`. + +## `$10`: `sound_caught_mon` + +Play `SFX_CAUGHT_MON`. + +## `$11`: `sound_dex_fanfare_80_109` + +Play `SFX_DEX_FANFARE_80_109`. + +## `$12`: `sound_fanfare` + +Play `SFX_FANFARE`. + +## `$13`: `sound_slot_machine_start` + +Play `SFX_SLOT_MACHINE_START`. + +## `$14`: `text_buffer` *id* + +Write text from one of the following addresses (listed in `StringBufferPointers`): + +0. `StringBuffer3` +1. `StringBuffer4` +2. `StringBuffer5` +3. `StringBuffer2` +4. `StringBuffer1` +5. `EnemyMonNick` +6. `BattleMonNick` + +## `$15`: `current_day` + +Print the weekday. + +## `$16`: `text_jump` *address* + +Write text from a different bank. diff --git a/macros/text.asm b/macros/text.asm index 5f4701b8c..e29f8a511 100644 --- a/macros/text.asm +++ b/macros/text.asm @@ -1,7 +1,7 @@ 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. -page EQUS "db $50," ; Start a new Pokedex page. +page EQUS "db $50," ; Start a new Pokédex page. 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.