Commit graph

29 commits

Author SHA1 Message Date
Bryan Bishop 2c24aa3510 stop disassembling when unconditional relative jumps go back
This adds the condition that it should stop disassembling even if there are
unsatisfied labels (example: from before the text script began).

hg-commit-id: 0b6ebcb02348
2012-01-12 13:21:05 -06:00
Bryan Bishop 7e35470fb1 update gbz80disasm based on sawakita's changes
Changes include:

* .ASM_ labels now include their offset in the label

* byte_labels keeps better track of when a label is defined versus used

* reverse relative jumps now work

* reverse unconditional relative jumps can end a script

hg-commit-id: 8afc93fce17a
2012-01-12 12:35:03 -06:00
Bryan Bishop 8ef0838654 remove extra output from gbz80disasm
hg-commit-id: 2c4886b28a2f
2012-01-11 17:45:13 -06:00
Bryan Bishop ea4fce81fa fix gbz80disasm to not treat $00 as the second byte of an opcode
hg-commit-id: 290296b59823
2012-01-11 17:36:17 -06:00
Bryan Bishop e95b8f1984 add end address to gbz80disasm output in a comment
hg-commit-id: 1d79cd8b426a
2012-01-11 00:06:52 -06:00
Bryan Bishop e4bce7ed15 lowercase two-byte ops that don't have params
hg-commit-id: 4b518c1bd0a0
2012-01-10 23:42:47 -06:00
Bryan Bishop 811529f6a4 fix gbz80disasm for multi-byte opcode incrementation
hg-commit-id: ad1ae67c5991
2012-01-10 23:36:24 -06:00
Bryan Bishop 5105065c72 gbz80disasm stops at all unconditional jumps unless there's a missing label
hg-commit-id: c23fcf211c19
2012-01-10 23:16:47 -06:00
Bryan Bishop f90b3fece1 RockTunnel1 texts and update gbz80disasm to not handle $8
hg-commit-id: 86d0d495afbc
2012-01-10 17:35:03 -06:00
Bryan Bishop 48199b4916 pick some reasonable defaults for gbz80disasm op codes
hg-commit-id: c249e08cbe9b
2012-01-10 14:58:26 -06:00
Bryan Bishop f5eb8d3753 prefer "jp hl" over "ld pc, hl" for $E9
hg-commit-id: 4788aae09066
2012-01-10 14:44:47 -06:00
Bryan Bishop 90197fcb86 add GetMachineName address to gbz80disasm
hg-commit-id: 8ba8806f333f
2012-01-10 14:42:15 -06:00
Bryan Bishop deb5bf89ae call $00b5 -> call CopyData
hg-commit-id: e6a487cf2186
2012-01-10 14:31:38 -06:00
Bryan Bishop cb9e9404c5 replace call $3e6d -> call Predef
hg-commit-id: 8045c9d0d1a1
2012-01-10 14:12:24 -06:00
Bryan Bishop 76dc9b8170 call $2f9e -> call GetMonName
hg-commit-id: 7bb690c08a4d
2012-01-10 13:44:54 -06:00
Bryan Bishop d9b994bf47 fix gbz80disasm line repetition bug
Certain two-byte op codes would be printed twice.

hg-commit-id: 8c7650a614b7
2012-01-10 13:42:21 -06:00
Bryan Bishop ebcf2a8756 implement two-byte op codes in gbz80disasm
Previously, two-byte commands in gbz80disasm would not read or allow
parameters. This update fixes gbz80disasm to read both the "x" and
"?" parameters.

x = one-byte parameter
? = two-byte parameter

hg-commit-id: 1494e8a88115
2012-01-10 12:47:37 -06:00
Bryan Bishop b6d32d9022 fix gbz80disasm pretty printer for non-08 scripts
hg-commit-id: 6f16741dc45f
2012-01-10 12:06:32 -06:00
Bryan Bishop 71a840c3c3 add has_outstanding_labels to gbz80disasm
This checks for whether or not there are relative jumps that have not been
accounted for. When it finds that a label on a relative jump is outstanding,
it will continue past any byte or command that would usually end the script.

hg-commit-id: 20fba34f0ae2
2012-01-10 11:25:09 -06:00
Bryan Bishop 33b7fedda3 replace call pointers with labels in gbz80disasm
Also, this changes how output_bank_opcodes works. Instead of calling lower()
on the entire output, each opcode and each line is individually lowercased.

As a result, the calls end up with correctly-capitalized labels.

hg-commit-id: bdde4aa404da
2012-01-10 11:16:57 -06:00
Bryan Bishop 468d065715 call $3927 -> call AddPokemonToParty
hg-commit-id: a4ec02195797
2012-01-10 02:11:54 -06:00
Bryan Bishop b36fbc72f3 fix extra whitespace from gbz80disasm
hg-commit-id: a244eb0b11fd
2012-01-10 01:40:34 -06:00
Bryan Bishop 4c59064f9f insert_asm in insert_texts for function asm
hg-commit-id: dc34a93f0f47
2012-01-10 01:18:18 -06:00
Bryan Bishop 983b87069d call $3c49 -> call PrintText
hg-commit-id: 2d9bb23f9db3
2012-01-10 01:05:09 -06:00
Bryan Bishop 14f9f3fac7 remove debug output from gbz80disasm
hg-commit-id: 65f6c206f6e1
2012-01-10 01:02:18 -06:00
Bryan Bishop a1eebadc37 fix gbz80disasm to optionally load a module in analyze_texts
hg-commit-id: 0504f841a9d5
2012-01-10 00:59:02 -06:00
Bryan Bishop c7331ebd19 updates to asm injection code
hg-commit-id: 6748c9773b32
2012-01-09 23:12:28 -06:00
Bryan Bishop 52e723ae65 insertion code for $08 text script asm
hg-commit-id: 5668ca41238c
2012-01-09 22:24:04 -06:00
Bryan Bishop 6ee0c38b35 a simple gameboy disassembler
hg-commit-id: 69a312de70de
2012-01-09 20:52:31 -06:00