Jennifer Taylor
|
6052deed3c
|
Refactor code generation step to allow for nested function definitions, actually hook those up.
|
2021-04-26 01:22:14 +00:00 |
|
Jennifer Taylor
|
3a9b3a7b3c
|
Pass indentation context into expression rendering for upcoming function definition support.
|
2021-04-26 01:21:42 +00:00 |
|
Jennifer Taylor
|
351e7060b8
|
Allow subclasses of verbose manager to check verbose state directly.
|
2021-04-26 01:21:03 +00:00 |
|
Jennifer Taylor
|
51e27c0cff
|
Enhance goto eliminiation to remove all unneeded gotos.
|
2021-04-24 19:37:14 +00:00 |
|
Jennifer Taylor
|
964d6f082c
|
Clean up types on If statement, stop using strings to pass information.
|
2021-04-24 19:36:58 +00:00 |
|
Jennifer Taylor
|
534ab20f98
|
Add dead code eliminiation so dominators doesn't fail. Fix a tricky jump case with if statements.
|
2021-04-24 18:13:07 +00:00 |
|
Jennifer Taylor
|
de84379ad0
|
Implement a lot more opcodes for expressions, fix an if conditional, improve while display.
|
2021-04-24 18:11:20 +00:00 |
|
Jennifer Taylor
|
cc27d2418e
|
Fix register display on assignment, add a few optimizing passes to clean up code.
|
2021-04-24 18:10:27 +00:00 |
|
Jennifer Taylor
|
f1aea996c4
|
Handle if-goto pattern that I previously neglected.
|
2021-04-24 18:09:44 +00:00 |
|
Jennifer Taylor
|
6221d0273b
|
Overhauled statement eval system so we always get back a list of statements.
|
2021-04-24 18:08:04 +00:00 |
|
Jennifer Taylor
|
b0778e1110
|
Convert expression rendering to an explicit function so we can retain __repr__ for debugging.
|
2021-04-24 18:07:01 +00:00 |
|
Jennifer Taylor
|
f2761b90b0
|
Restructure a lot of types to fit an expression/statement model and making a lot of stuff make more sense.
|
2021-04-24 18:05:58 +00:00 |
|
Jennifer Taylor
|
19c6de1fcc
|
Actually decompile basic bytecode. There's much left to do, but some basics work!
|
2021-04-24 18:05:03 +00:00 |
|
Jennifer Taylor
|
aebc277b62
|
Add a graph walker at the very end to verify that we've handled all control paths correctly, fix an edge case in If detection.
|
2021-04-24 18:03:24 +00:00 |
|
Jennifer Taylor
|
6aa04b0c1b
|
Implement recursive if detection.
|
2021-04-24 18:02:26 +00:00 |
|
Jennifer Taylor
|
6e34d2647e
|
Implement loop break/continue/goto processing.
|
2021-04-24 18:01:25 +00:00 |
|
Jennifer Taylor
|
738fce36c9
|
Lots more implementation done on decompiler, including better control flow and loop detection.
|
2021-04-24 18:00:13 +00:00 |
|
Jennifer Taylor
|
b77ccdd5b9
|
Beginning of an AFP ByteCode decompiler, starting with a massive code reorg and a control flow graph analyzer.
|
2021-04-24 17:59:36 +00:00 |
|
Jennifer Taylor
|
011b84aceb
|
Actually parse bytecode into an intermediate representation.
|
2021-04-21 03:58:53 +00:00 |
|
Jennifer Taylor
|
f209bcbe54
|
Exit early if we're done rendering the main animation, allow background color override.
|
2021-04-21 01:06:48 +00:00 |
|
Jennifer Taylor
|
47525837cd
|
Allow partial renders by hitting ctrl-c.
|
2021-04-21 00:01:35 +00:00 |
|
Jennifer Taylor
|
cc25c3c8dc
|
Don't draw shapes/sprites with zero scaling factor.
|
2021-04-20 23:33:43 +00:00 |
|
Jennifer Taylor
|
05a85abce8
|
Convert some more exceptions to warnings for best-effort renderings.
|
2021-04-20 23:19:14 +00:00 |
|
Jennifer Taylor
|
4c7ac0f744
|
Rework engine so multiple of the same sprite can be placed down by place item tags.
|
2021-04-20 21:41:28 +00:00 |
|
Jennifer Taylor
|
81c4496269
|
Implement what I think are the correct blending modes. Fixes some older Pop'n animations.
|
2021-04-20 21:41:09 +00:00 |
|
Jennifer Taylor
|
5a499a0f2c
|
Fix rotation origin so some bishi bashi levels will render.
|
2021-04-17 23:33:04 +00:00 |
|
Jennifer Taylor
|
d1cf978e12
|
Change rendering output style, allow series of png files to be rendered.
|
2021-04-17 23:32:47 +00:00 |
|
Jennifer Taylor
|
8cd85f26e9
|
Separate blend and color arguments for ease of experimenting.
|
2021-04-17 23:32:30 +00:00 |
|
Jennifer Taylor
|
ebc86019ae
|
Implement color blending, add fast path back to rendering shapes.
|
2021-04-17 23:32:10 +00:00 |
|
Jennifer Taylor
|
e1c6ad429c
|
Implement proper affine transformations instead of just translation.
|
2021-04-17 23:31:36 +00:00 |
|
Jennifer Taylor
|
c6e19d0dfa
|
Overhaul clip playback engine to allow clips to start when they're placed, not when they're created.
|
2021-04-17 23:31:08 +00:00 |
|
Jennifer Taylor
|
830f32814e
|
Clean up the code some in preparation for trying to get affine transformations working.
|
2021-04-17 23:30:46 +00:00 |
|
Jennifer Taylor
|
700e63a001
|
Convert some more exceptions to warnings to allow attempts to render some BishiBashi content.
|
2021-04-16 21:28:53 +00:00 |
|
Jennifer Taylor
|
de5dfd2421
|
Hook up TXP2 container to renderer, provide a "list" option to list out possible rendering paths in a container.
|
2021-04-16 21:08:41 +00:00 |
|
Jennifer Taylor
|
d4faa9f7d8
|
Fix path issues for a few miscelaneous tools on Windows.
|
2021-04-16 03:51:16 +00:00 |
|
Jennifer Taylor
|
42f57e10d7
|
Include origin point in updated tags.
|
2021-04-15 23:24:46 +00:00 |
|
Jennifer Taylor
|
3ad60064f9
|
Convert some exceptions to warnings so files can be partially rendered.
|
2021-04-15 23:20:27 +00:00 |
|
Jennifer Taylor
|
d835c46320
|
Support nested animations as well as update object requests.
|
2021-04-15 23:19:56 +00:00 |
|
Jennifer Taylor
|
3f5760343a
|
Always filter out unnecessary exported tags, even when rendering the default animation.
|
2021-04-15 23:18:54 +00:00 |
|
Jennifer Taylor
|
1683c8ecdd
|
Initial stab at an AFP animation renderer. It can render some basic animations from Pop'n Music!
|
2021-04-15 23:18:33 +00:00 |
|
Jennifer Taylor
|
3941b7e602
|
Fix a few more typos in object placement, values make a lot more sense now.
|
2021-04-15 23:17:45 +00:00 |
|
Jennifer Taylor
|
61603b0e63
|
Codify my guess as to what's going on with the mysterious point.
|
2021-04-15 23:17:15 +00:00 |
|
Jennifer Taylor
|
544baae387
|
Fix a few small bugs with place object handling.
|
2021-04-15 23:16:45 +00:00 |
|
Jennifer Taylor
|
db36298f22
|
Slightly better IFS extraction and shape documentation, given my understanding of the relationship between the two.
|
2021-04-15 23:16:03 +00:00 |
|
Jennifer Taylor
|
520181785d
|
Vastly improved IFS extraction which names afp/bsi/geo files correctly.
|
2021-04-14 01:08:13 +00:00 |
|
Jennifer Taylor
|
d486cfa54e
|
Finish handling push types and a few miscelaneous constants.
|
2021-04-14 01:07:33 +00:00 |
|
Jennifer Taylor
|
142ee31d56
|
Finish initial RE on bytecode, every opcode is now accounted for.
|
2021-04-14 01:07:01 +00:00 |
|
Jennifer Taylor
|
79b31c7fa2
|
Hook up parsed objects to all of SWF except for the bytecode mess.
|
2021-04-12 03:10:31 +00:00 |
|
Jennifer Taylor
|
8d686dcdb7
|
Assert on unknown data inside GE2D structures, so we don't miss something important.
|
2021-04-12 03:10:14 +00:00 |
|
Jennifer Taylor
|
9f6b9eb7d6
|
Begin parsing AFP data into useful structures.
|
2021-04-12 03:09:57 +00:00 |
|
Jennifer Taylor
|
522f8eaa29
|
Refactor verbose debugging to its own class, clean up classes that used it.
|
2021-04-11 20:45:17 +00:00 |
|
Jennifer Taylor
|
897e779b20
|
Refactor coverage stuff out to its own utility class, clean up code that used it.
|
2021-04-11 20:44:55 +00:00 |
|
Jennifer Taylor
|
30a51f48e6
|
Massive juggling of core AFP/AP2 implementation into its own files.
|
2021-04-11 20:44:31 +00:00 |
|
Jennifer Taylor
|
f1294df839
|
Split types up to generic types and AP2-specific types.
|
2021-04-11 20:44:11 +00:00 |
|
Jennifer Taylor
|
cef8bbfa83
|
Separate types out into their own module.
|
2021-04-11 20:43:51 +00:00 |
|
Jennifer Taylor
|
749f2bab0d
|
Move AFP library in preparation of refactoring.
|
2021-04-11 20:43:27 +00:00 |
|
Jennifer Taylor
|
fce04a2493
|
Implement a few more bytecode parsers, implement a few more push types, fix advancing past tags which are not 4-byte aligned in size.
|
2021-04-10 03:47:15 +00:00 |
|
Jennifer Taylor
|
61bd70f803
|
Implement some of edit text tags.
|
2021-04-10 03:46:52 +00:00 |
|
Jennifer Taylor
|
72f81e4f58
|
Fix typing mistake not caught on previous AP2 check-in.
|
2021-04-08 01:05:48 +00:00 |
|
Jennifer Taylor
|
6b547f72ec
|
Implement a decent chunk more bytecode, implement font tag.
|
2021-04-07 04:36:55 +00:00 |
|
Jennifer Taylor
|
2c35ca1cda
|
Implement unknown point parser to make DDR PS3 files parseable.
|
2021-04-07 00:45:08 +00:00 |
|
Jennifer Taylor
|
3109794607
|
Add in expanded property table that works with newer Pop'n/IIDX data.
|
2021-04-07 00:22:42 +00:00 |
|
Jennifer Taylor
|
689a997079
|
Support 1-byte integer PUSH from tricoro.
|
2021-04-06 23:01:42 +00:00 |
|
Jennifer Taylor
|
32cc4a071c
|
Update with working RE for all remaining known data pieces including properties and object events.
|
2021-04-06 22:24:36 +00:00 |
|
Jennifer Taylor
|
fa49513381
|
Fix ability to parse DDR PS3 AFP files, add a bit of info gleaned from looking at those files.
|
2021-04-06 05:46:53 +00:00 |
|
Jennifer Taylor
|
b118cd1109
|
Add a ton of RE for bytecodes, now capable of parsing several Bishi Bashi levels.
|
2021-04-06 04:56:59 +00:00 |
|
Jennifer Taylor
|
50b5ae8616
|
Fix a few more todos, slight renaming based on better understanding.
|
2021-04-05 16:28:34 +00:00 |
|
Jennifer Taylor
|
0bfec7655c
|
Last few object bits implemented enough to parse Pop'n Music, a few more annotations.
|
2021-04-05 00:52:10 +00:00 |
|
Jennifer Taylor
|
887d4dc657
|
Add a mostly-complete parser for shapes, which are the missing link between object placement in AP2 files and textures/regions elsewhere.
|
2021-04-03 05:30:19 +00:00 |
|
Jennifer Taylor
|
98197641c9
|
Add an almost-complete object instantiation/updating parser.
|
2021-04-03 05:29:37 +00:00 |
|
Jennifer Taylor
|
c6a138c0ea
|
Add AP2 action table, codify understanding of frames, minor adjustments.
|
2021-04-03 05:28:57 +00:00 |
|
Jennifer Taylor
|
bfa7384f2b
|
Update tag parsing with better guesses as to the unknown tag sections.
|
2021-04-03 05:26:25 +00:00 |
|
Jennifer Taylor
|
0e86248fd1
|
Support sprites which are basically recursive tag sections.
|
2021-04-03 05:26:03 +00:00 |
|
Jennifer Taylor
|
d688314d1f
|
Restructure string decoding, fix non-ascii strings, at least parse out the last remaining tag bytes we don't understand.
|
2021-04-03 05:25:27 +00:00 |
|
Jennifer Taylor
|
7beb518484
|
Fix a TODO, add a bit more RE.
|
2021-03-30 04:50:51 +00:00 |
|
Jennifer Taylor
|
02d2c9cd5a
|
Got a bit more of the AFP base format figured out. Now we can see shape definitions and imported/exported tags properly.
|
2021-03-30 04:50:05 +00:00 |
|
Jennifer Taylor
|
8e8bcbf822
|
Juggle AFP file a bit.
|
2021-03-30 04:49:37 +00:00 |
|
Jennifer Taylor
|
47330ca37d
|
Fix DXT1/DXT5 handling for DDR PS3 files.
|
2020-12-21 23:41:58 +00:00 |
|
Jennifer Taylor
|
32d1909137
|
Support round-tripping a few more bits of various files, to increase our eventual success of injecting translated T*BB textures.
|
2020-11-11 03:39:21 +00:00 |
|
Jennifer Taylor
|
96298d8ecf
|
Fix T*BB font decoding issue by setting the correct endianness.
|
2020-11-06 19:57:35 +00:00 |
|
Jennifer Taylor
|
042cce481f
|
Fix last issue with font conversion for T*BB.
|
2020-11-06 19:02:41 +00:00 |
|
Jennifer Taylor
|
a26d8f4b64
|
Fix several bugs in DXT5 decompressor, renders fonts much closer to the game now.
|
2020-11-06 18:40:41 +00:00 |
|
Jennifer Taylor
|
786676fd26
|
Initial code for The*BishiBashi graphics file unpacker.
|
2020-11-06 02:08:21 +00:00 |
|
Jennifer Taylor
|
509cb4f0d9
|
Convert most of the format() string calls to f-strings using libcst.
Exact commands run were:
python3 -m libcst.tool codemod convert_format_to_fstring.ConvertFormatStringCommand . --no-format
python3 setup.py build_ext --inplace
|
2020-01-07 21:29:07 +00:00 |
|
Jennifer Taylor
|
c89c12062d
|
Upgrade to latest flake8, address new flake issues.
|
2019-12-10 01:10:14 +00:00 |
|
Jennifer Taylor
|
74c0407173
|
Initial commit of BEMANI Utilities to GitHub.
|
2019-12-08 21:43:49 +00:00 |
|