Bryan Bishop
531ccfb5f6
update gbz80disasm to not use $ff00+$ff syntax
2012-12-16 09:16:04 -06:00
padz
3bae3a5313
make gbz80disasm easier to use externally
2012-12-14 02:47:13 -05:00
Bryan Bishop
671e2b1289
md5 -> hashlib
2012-11-30 10:17:23 -06:00
Bryan Bishop
a1a9fa5560
move allowed_lengths for music macros out
...
This moves the allowed_lengths setting out of the preprocessor. Special
cases should not be hardcoded in the preprocessor.
2012-11-30 09:54:02 -06:00
padz
3626ddebd1
implement music macros; INCLUDE injection in pre
2012-11-30 05:58:00 -05:00
padz
1b54f73323
play nice w/ cygwin; undeprecate used command
2012-11-15 02:33:02 -05:00
Bryan Bishop
69c0125112
remove deprecated functions from crystal.py
2012-10-11 19:05:49 -05:00
Bryan Bishop
82f7e98306
get an address given a label
2012-10-11 18:52:54 -05:00
Bryan Bishop
e6c95e22c9
clean up comments in extras/crystal.py
...
This fixes the inconsistent comment formatting throughout the file.
There should be a space between the comment token and the comment
message, otherwise this file is less fun to read.
2012-10-01 13:11:52 -05:00
Bryan Bishop
e1ff7f98de
generate labels.json automagically in gbz80disasm
2012-09-10 22:30:58 -05:00
Bryan Bishop
d23972b7a3
call load_asm in scan_for_predefined_labels
2012-09-10 22:30:58 -05:00
Bryan Bishop
0c3ba03d37
Merge pull request #22 from iimarckus/decimal1
...
Decimal1
2012-07-08 23:25:49 -07:00
IIMarckus
fa019d2f51
Add some functions from Mobile Stadium.
2012-07-07 19:51:02 -06:00
Bryan Bishop
6f8c3e5c3e
use decimal output for givepoke in extras/crystal.py
2012-07-05 10:25:33 -05:00
Bryan Bishop
b85d9b86ad
use os.path.join instead of cowboying it
2012-07-01 08:55:21 -05:00
Bryan Bishop
86cb61dbe8
make pokecrystal compatible with python2.6 by default
2012-07-01 08:48:27 -05:00
Bryan Bishop
58c696cfd3
use extras/labels.json and not ./labels.json in romstr.py
2012-07-01 08:44:20 -05:00
Bryan Bishop
85d26e31a5
better graph-generating routines
2012-07-01 08:41:38 -05:00
Bryan Bishop
fcf43b13da
fix romstr for compiling (thanks pasky)
2012-07-01 08:41:14 -05:00
Bryan Bishop
3359121ba7
graph.py - parse pokecrystal into a function graph for d3.js
2012-06-21 03:37:13 -05:00
Bryan Bishop
e471fbeb32
continue at relative jumps and fix formatting
2012-06-20 21:13:24 -05:00
Bryan Bishop
36eb6c726a
use labels in the disassembler output
2012-06-20 01:51:23 -05:00
Bryan Bishop
099295bb3d
load labels into the new disassembler
2012-06-20 01:42:48 -05:00
Bryan Bishop
1342ab67db
more de-dependency-looping
2012-06-20 01:42:33 -05:00
Bryan Bishop
ca07f1d64c
move code around to avoid dependency loops
2012-06-20 01:13:15 -05:00
Bryan Bishop
e2babd69fb
use romstr.py as the new disassembler
2012-06-19 23:59:49 -05:00
Bryan Bishop
96596c6944
asm output for the new disassembler
2012-06-19 23:42:12 -05:00
Bryan Bishop
96ca472fc9
implement a formatted-with-labels version of the opcode line
2012-06-19 22:54:20 -05:00
Bryan Bishop
9a4158462b
remove debug lines
2012-06-19 22:40:38 -05:00
Bryan Bishop
132182e263
super duper disassembler fixes
2012-06-19 22:12:52 -05:00
Bryan Bishop
4b7ca69344
advance forward when disassembling the rom
2012-06-14 21:54:25 -05:00
Bryan Bishop
b19db1e604
broken disassembler
2012-06-10 22:55:05 -05:00
Bryan Bishop
cd60a1f0e4
backtracking and labeling for the disassembler
2012-06-10 18:26:18 -05:00
Bryan Bishop
10a5a6518d
somewhat improved disassembler
2012-06-10 12:24:33 -05:00
Bryan Bishop
3233cead33
sleepy disassembling
2012-06-07 01:37:55 -05:00
Bryan Bishop
4ccfe27e4a
more awful code for the new disassembler
2012-06-07 01:24:38 -05:00
Bryan Bishop
7dd0c86a6b
almost complete new disassembler version
2012-06-07 01:07:48 -05:00
Bryan Bishop
0768fead4f
more cleaning
2012-06-06 21:04:40 -05:00
Bryan Bishop
c79db81d43
remove more code cruft
2012-06-06 21:00:30 -05:00
Bryan Bishop
48b2237b82
remove some code cruft from gbz80disasm
2012-06-06 20:43:02 -05:00
Bryan Bishop
315edbe14b
get RomStr from romstr.py in gbz80disasm
2012-06-06 20:26:02 -05:00
Bryan Bishop
9144706510
make unittest2 error show up in stderr
2012-06-02 11:42:09 -05:00
Bryan Bishop
376f65a4fd
temporarily disable label-usage (find_label) in gbz80disasm
2012-05-31 02:02:41 -05:00
Bryan Bishop
8add342a85
find functions based on first few similar bytes
2012-05-31 02:02:23 -05:00
Bryan Bishop
e954781618
hooray PrintNumber_PrintLeadingZero is also shared
2012-05-29 15:04:19 -05:00
Bryan Bishop
53b0dd13a8
comparator.py - find shared functions between pokered/pokecrystal
2012-05-29 14:50:56 -05:00
Bryan Bishop
d174c8b7c6
fix up AsmSection and line_has_comment_address
2012-05-29 14:50:35 -05:00
Bryan Bishop
0edf9eb8b8
move AsmList into romstr.py too
2012-05-29 13:19:02 -05:00
Bryan Bishop
ee7d39bf04
move RomStr into a shared file
2012-05-29 13:08:43 -05:00
Bryan Bishop
0aecb683a0
use map constants for wildmons sections
2012-05-28 10:30:45 -05:00
Bryan Bishop
a9b0eb4d87
update to_asm on MapHeader to use the BANK macro
2012-05-28 09:51:49 -05:00
Bryan Bishop
5e37b9a97f
insert all map connections
2012-05-28 00:16:38 -05:00
Bryan Bishop
2fe10a6682
don't use any particular formula for strip-destination west/east
2012-05-27 23:50:18 -05:00
Bryan Bishop
7d9552b5fa
fix typo in strip destination pointer (north) calculations
2012-05-27 20:02:34 -05:00
Bryan Bishop
d48ce59997
do all the connection to_asm output
2012-05-27 19:45:44 -05:00
Bryan Bishop
da74952bf7
asm output for strip pointer formulas
2012-05-27 18:24:09 -05:00
Bryan Bishop
5b59d0776b
better formulas for strip_destination and window
2012-05-27 15:54:44 -05:00
Bryan Bishop
a32c6d0aa4
improve formulas for calculating strip_pointer
2012-05-27 13:46:58 -05:00
Bryan Bishop
56e0795d0d
better equations for calculating strip_pointer in connections
2012-05-27 12:51:53 -05:00
Bryan Bishop
fbaadd97ac
some broken code
2012-05-26 23:13:48 -05:00
Bryan Bishop
3a614ddcea
east connections?
2012-05-26 22:19:53 -05:00
Bryan Bishop
30695eec25
fix MainText/PokedexText interaction
2012-05-26 16:10:11 -05:00
Bryan Bishop
d88ea77cfa
start to parse the connection data
2012-05-26 14:46:34 -05:00
Bryan Bishop
6074a55e3d
minor whitespace fix
2012-05-24 22:01:50 -05:00
Bryan Bishop
64f52b32ef
fix more height/weight confusion and whitespacing
2012-05-23 19:40:12 -05:00
Sanky
765b555b47
Dumped Pokédex data and entries.
2012-05-24 02:33:42 +02:00
Bryan Bishop
4ec6dfc5fe
fix PokedexText?
2012-05-23 18:15:48 -05:00
Bryan Bishop
38eae01fcd
fix PokedexText
2012-05-23 17:56:34 -05:00
Bryan Bishop
1663472cf6
quick fix for PokedexText
2012-05-23 17:39:30 -05:00
Bryan Bishop
0c778f2930
use PokedexText to parse text-script-like text without the first bash command
2012-05-23 17:38:15 -05:00
IIMarckus
bd1760f3f9
Use Pokémon IDs for the “cry” macro.
2012-05-22 19:57:09 -06:00
Bryan Bishop
4b2d26965e
dump-insert the stringtotext targets
2012-05-22 11:57:00 -05:00
Bryan Bishop
2567957692
use EncodedText for stringtotext params
2012-05-22 11:50:25 -05:00
Bryan Bishop
cb5eae3e9d
check if trainer_names has been set yet before using that key
2012-05-22 11:44:42 -05:00
Bryan Bishop
c16d796c27
add '@' to EncodedText output
2012-05-22 11:38:57 -05:00
Bryan Bishop
05686167d7
SUPERNERD -> SUPER_NERD in trainer constants
2012-05-21 08:39:11 -05:00
Bryan Bishop
e517b30a14
at least try to keep HoOh in tact in label names
2012-05-21 01:38:11 -05:00
Bryan Bishop
7641b53a6a
fix line continuation syntax error
2012-05-21 01:35:45 -05:00
Bryan Bishop
9ea35422f8
add trainer id to trainer fragment headers for grunts
2012-05-21 01:34:21 -05:00
Bryan Bishop
377a212322
improvements to map_name_cleaner
2012-05-21 01:31:26 -05:00
Bryan Bishop
ba72006077
add the labels to the scripts, not to the params pointing to scripts
2012-05-20 14:32:19 -05:00
Bryan Bishop
a34d4621ee
better signpost labeling
2012-05-20 14:23:13 -05:00
Bryan Bishop
61d3b8a6b4
use better label for MapEventHeader
2012-05-20 09:56:27 -05:00
Bryan Bishop
a27a7f2892
reuse pre-existing/pre-inserted MapBlockData objects when possible
2012-05-20 09:37:43 -05:00
Bryan Bishop
2c73f020a6
make map header labels use better rules
2012-05-20 09:32:59 -05:00
Bryan Bishop
1286f37a85
don't add TrainerGroupTable to future dumps
2012-05-20 04:32:39 -05:00
Bryan Bishop
38b9862002
give better labels to TrainerFragment subobjects like texts and scripts
2012-05-20 04:29:19 -05:00
Bryan Bishop
219c4865e3
create better labels for TrainerFragments
2012-05-20 04:11:37 -05:00
Bryan Bishop
6a2dc36749
rename cal's header to PKMN Trainer
2012-05-20 03:57:12 -05:00
Bryan Bishop
be8a5d6c6a
remove extra spacing in crystal.py
2012-05-20 03:39:25 -05:00
Bryan Bishop
609e94774c
make TrainerFragment.to_asm() use trainer constants
2012-05-20 03:33:35 -05:00
Bryan Bishop
35e6903395
better asm output for TrainerHeader and TrainerGroupHeader
2012-05-20 03:20:01 -05:00
Bryan Bishop
efd43a17b2
improve MoveParam to handle zeroed-out moves
2012-05-20 03:15:36 -05:00
Bryan Bishop
40000ca816
fix quick syntax error
2012-05-20 03:11:22 -05:00
Bryan Bishop
569dec4a85
initial MoveParam class
2012-05-20 03:10:40 -05:00
Bryan Bishop
a28311ff90
move_constants.py - store moves for MoveParam
2012-05-20 03:10:26 -05:00
Bryan Bishop
1fb70a4b4f
update TrainerGroupParam and TrainerIdParam to use better constant/number rules
2012-05-20 03:02:35 -05:00
Bryan Bishop
b731d8d1f8
update the constants for BLACKBELT_T and PSYCHIC_T in trainers.py
2012-05-20 02:52:51 -05:00
Bryan Bishop
c08a543620
fix duplicate BENNY trainer name
2012-05-20 02:50:21 -05:00
Bryan Bishop
fafb53ebf9
fix RIVAL1 trainer id labeling
2012-05-20 02:21:26 -05:00
Bryan Bishop
11177b9b7d
spit out trainer id constants
2012-05-20 02:15:40 -05:00
Bryan Bishop
8124e76940
move around the trainers.py import line
2012-05-20 00:24:25 -05:00
Bryan Bishop
4c45171213
add 'trainer_names' key to each trainer header in trainer_group_names
2012-05-20 00:20:31 -05:00
Bryan Bishop
6f49b01c4b
make better trainer names
2012-05-20 00:02:43 -05:00
Bryan Bishop
424300a803
add default constants to trainer_group_names
2012-05-19 22:35:05 -05:00
Bryan Bishop
6d7a20692a
use GruntM/GruntF for the trainer group names
2012-05-19 22:25:53 -05:00
Bryan Bishop
4aa953cc38
setup rules for which trainer groups should use which naming scheme
2012-05-19 22:02:11 -05:00
Bryan Bishop
7098fccc22
rename some trainer groups
2012-05-19 21:50:07 -05:00
Bryan Bishop
a001c51bd4
fix TrainerGroupTable.get_dependencies()
2012-05-19 21:13:57 -05:00
Bryan Bishop
aed366e59d
update trainer group names for the new rules
2012-05-19 19:26:29 -05:00
Bryan Bishop
fd094d17bf
add missing trainer header for twins lea & pia
2012-05-19 18:54:32 -05:00
Bryan Bishop
7762fd89d2
add missing trainer header for kimono girl miki
2012-05-19 18:52:23 -05:00
Bryan Bishop
49c9557964
add missing blackbelt wai
2012-05-19 18:44:00 -05:00
Bryan Bishop
844dfb7d8a
add missing jugglers
2012-05-19 18:42:46 -05:00
Bryan Bishop
2f470415e1
add two missing biker trainer headers
2012-05-19 18:36:11 -05:00
Bryan Bishop
c735786ceb
fix missing supernerd markus
2012-05-19 18:33:42 -05:00
Bryan Bishop
6008b1a96c
pick up the third CAL trainer header
2012-05-19 18:28:23 -05:00
Bryan Bishop
e52d1e9415
add TrainerGroupHeaders to script_parse_table
2012-05-19 17:30:49 -05:00
Bryan Bishop
82731321cb
parse multiple party mons per trainer
2012-05-19 16:39:36 -05:00
Bryan Bishop
fb7c3a3ea5
move trainer parsing classes into crystal.py
2012-05-19 15:43:26 -05:00
Bryan Bishop
1d6fa83902
finish up the classes related to TrainerGroupHeader
2012-05-19 15:31:35 -05:00
Bryan Bishop
38726204c8
better comments on trainer_group_report
2012-05-19 15:30:02 -05:00
Bryan Bishop
810e20cc04
use report_unreferenced_trainer_ids to show which ids are probably valid but unused
2012-05-19 13:57:19 -05:00
Bryan Bishop
e0eb31df73
parse TrainerGroupTable in run_main after everything else
2012-05-19 01:44:44 -05:00
Bryan Bishop
e562ffeedf
update trainer names
2012-05-18 22:55:32 -05:00
Bryan Bishop
e7f90ba15b
add charset encoding for trainers.py
2012-05-18 22:47:07 -05:00
Bryan Bishop
2d4d6399db
find last trainer id in each trainer group
2012-05-18 21:53:17 -05:00
Bryan Bishop
a6efb7f0fb
extract trainer group id and trainer id from TrainerFragment objects
2012-05-18 21:31:51 -05:00
Bryan Bishop
a17ef09e10
work towards parsable trainer group headers
2012-05-18 21:31:14 -05:00
Bryan Bishop
9c9d6a2286
fixing up trainer names
2012-05-18 20:33:15 -05:00
Bryan Bishop
235b123666
initial work on trainer name parsing
2012-05-18 16:48:39 -05:00
Bryan Bishop
979b376741
generate helpful labels for maps
2012-05-17 00:40:40 -05:00
Bryan Bishop
a049ef74f8
use db instead of item_frag on ItemFragment remote chunks
2012-05-16 21:16:28 -05:00
Bryan Bishop
ac19eb2826
don't repeat-parse movement scripts, and set bank=1 for $4000 <= x <= $7FFF
2012-05-16 18:33:24 -05:00
Bryan Bishop
a53b5ae051
handle dragon shrine recursion (but not others?)
2012-05-16 15:22:39 -05:00
Bryan Bishop
34c6b38da6
tool to help narrow down the problem in a bank
2012-05-16 14:37:30 -05:00
Bryan Bishop
dc3fd295c0
correct for two route 10 maps
2012-05-16 14:24:18 -05:00
Bryan Bishop
079afeea46
fix preprocessor/givepoke for variable-number-of-parameter macros
2012-05-16 12:44:55 -05:00
Bryan Bishop
2d763b53a6
fix zzyyxx output for MoneyByteParam (checkmoney, takemoney)
2012-05-16 12:07:20 -05:00
Bryan Bishop
7244cb256e
only recalculate a PointerLabelParam parsed_address if necessary
2012-05-15 22:15:08 -05:00
Bryan Bishop
3afb9602eb
improve extras/README.md opening sentence
2012-05-14 10:42:43 -05:00
Bryan Bishop
bde4f489df
better asm output for SignpostRemoteItem
2012-05-14 00:58:11 -05:00
Bryan Bishop
f43de05607
fix PointerLabelParams in signposts
2012-05-14 00:51:16 -05:00
Bryan Bishop
984597d1aa
fix movement param get_dependencies
2012-05-13 22:48:35 -05:00
Bryan Bishop
6048436046
remove some output that clutters up the preprocessor output
2012-05-13 21:59:25 -05:00
Bryan Bishop
e905f9f1f1
better movement command/macro support
2012-05-13 21:53:48 -05:00
Bryan Bishop
eaff513b47
fix unknown MovementCommand parsing
2012-05-13 21:32:28 -05:00
Bryan Bishop
251fb52d8a
use deepcopy to create applymovement commands
2012-05-13 18:53:11 -05:00
Bryan Bishop
b41da5fe1c
let create_movement_commands access a debug parameter
2012-05-12 14:15:42 -05:00
Bryan Bishop
1a82579956
slightly better applymovement parsing
2012-05-12 02:18:27 -05:00