Commit Graph
100 Commits
Author SHA1 Message Date
Yoshi Askharoun f18920fd33 [WIP] First pass at script decompilation 2025-07-18 00:23:23 -05:00
Yoshi Askharoun 059e143980 Fix namespaces on element property assignments 2025-07-17 18:32:28 -05:00
Yoshi Askharoun 2a76d02461 Support content init, PLAD, PGET/P/T, LSYM, and serialization of complex objects with simple properties 2025-07-17 17:55:04 -05:00
Yoshi Askharoun 64f7a445eb Support method calls on instances 2025-07-17 17:52:57 -05:00
Yoshi Askharoun 8a4b3853b2 Use switch 2025-07-17 15:29:51 -05:00
Yoshi Askharoun 52d2fdb10b Move init method analysis 2025-07-17 15:26:17 -05:00
Yoshi Askharoun 27086b73a8 Move common decompiler state to new class 2025-07-17 14:30:19 -05:00
Yoshi Askharoun 109c44e8eb Genericize conversions from instance/expressions to XML 2025-07-17 14:07:44 -05:00
Yoshi Askharoun c4a8be37cb [WIP] Start handling inline expressions 2025-07-17 00:46:05 -05:00
Yoshi Askharoun 2f09fbf67c [WIP] Static analysis of XML constructors 2025-07-16 23:00:49 -05:00
Yoshi Askharoun 8e922468c5 Don't overwrite original files 2025-07-16 23:00:24 -05:00
Yoshi Askharoun 4114d206cb Add real-world tests from Zune 3.1, ported to UIX 4.8 2025-07-16 22:59:57 -05:00
Yoshi Askharoun bfff6f8c70 Use new UIX sublibraries 2025-07-15 22:11:00 -05:00
Yoshi Askharoun 3e6beb6406 [WIP] Decompile to XML 2025-07-15 21:57:09 -05:00
Yoshi Askharoun 9495785efb Add offset and index to instructions and operands 2025-07-15 21:56:44 -05:00
Yoshi Askharoun 8b2a88a77c Begin UIX XML decompiler target 2025-02-01 20:31:25 -06:00
Yoshi Askharoun 42ff03b80a Update Iris 2025-01-31 22:17:40 -06:00
Yoshi Askharoun d16a05a91e AsmMarkupLoader cleanup 2025-01-29 15:22:17 -06:00
Yoshi Askharoun 3285afd06f AsmMarkupLoader cleanup 2025-01-29 15:21:01 -06:00
Yoshi Askharoun 0904702679 [WIP] Importing shared data tables 2025-01-29 14:23:12 -06:00
Yoshi Askharoun c34aae8212 Show errors from loading shared data table when decompiling 2025-01-29 10:58:05 -06:00
Yoshi Askharoun bde7340b0a Bubble up Asm parsing errors 2025-01-29 08:01:24 -06:00
Yoshi Askharoun ac5ef6b127 [WIP] Fix assembler bugs 2025-01-28 15:36:23 -06:00
Yoshi Askharoun 26610d63e0 Support decompiling directory contents 2025-01-28 14:14:14 -06:00
Yoshi Askharoun 75964d9566 Add line number record for start of ASM line 2025-01-28 14:13:54 -06:00
Yoshi Askharoun bc1df39ed6 Fix type imports from reused namespaces 2025-01-28 14:13:38 -06:00
Yoshi Askharoun b6ccfdff51 Update Iris 2025-01-28 11:39:18 -06:00
Yoshi Askharoun 2d00d45dd7 Update Iris 2025-01-28 00:32:12 -06:00
Yoshi Askharoun 7ef46d843f Check in test commands 2025-01-28 00:20:30 -06:00
Yoshi Askharoun 2060bda2b2 Fix subsequent usages of deduplicated namespace prefixes 2025-01-27 23:51:32 -06:00
Yoshi Askharoun 3e9e1fef0f Support generic types 2025-01-27 23:28:44 -06:00
Yoshi Askharoun 7ad4ee68e0 [WIP] Data table imports 2025-01-27 19:15:30 -06:00
Yoshi Askharoun d89a3adb89 Remove XML from UIXA parsing 2025-01-27 18:41:39 -06:00
Yoshi Askharoun 4c4bedb492 Add UIXA string literals 2025-01-27 18:23:07 -06:00
Yoshi Askharoun 609325b62c Allow generic load result 2024-12-30 11:24:26 -06:00
Yoshi Askharoun 1e43ec3257 Add notes to disassembler for shared binary tables 2024-12-30 11:04:45 -06:00
Yoshi Askharoun cbc4d6149f Remove LoadFromAssemblyPath hack from compiler command 2024-12-30 03:43:09 -06:00
Yoshi Askharoun 2a3b9ec4db Rename to TryResolvePath 2024-12-30 01:34:30 -06:00
Yoshi Askharoun 5005cb415f Update text.uib test 2024-12-29 18:44:19 -06:00
Yoshi Askharoun ca3686b383 Add prefix to test filenames 2024-12-29 18:33:14 -06:00
Yoshi Askharoun 9d56376181 Better canonical constant encoding 2024-12-29 18:29:54 -06:00
Yoshi Askharoun 570e5e98d1 Prevent duplication of ErrorManager and TraceSettings handlers 2024-12-29 16:33:01 -06:00
Yoshi Askharoun a3526f1640 Update constants in testA.uixa 2024-12-29 15:47:13 -06:00
Yoshi Askharoun 58b82c1e64 Fix loading of binary and canonical constants 2024-12-29 15:33:10 -06:00
Yoshi Askharoun 845f241702 Fix parsing of binary constants 2024-12-29 15:32:38 -06:00
Yoshi Askharoun f7ab609a0c Update Iris with more tracing 2024-12-27 22:58:03 -06:00
Yoshi Askharoun 9924746459 Update UIX 2024-07-07 22:46:48 -05:00
Yoshi Askharoun 5762ea60b8 Update packages 2024-07-07 22:45:59 -05:00
Yoshi Askharoun eb3f233047 Use base compiler command 2024-07-07 22:40:19 -05:00
Yoshi Askharoun 1d5243b8bf Better error formatting 2024-07-07 15:51:39 -05:00
Yoshi Askharoun ee522bfc87 Better compiler error reporting 2024-07-07 15:37:27 -05:00
Yoshi Askharoun 53a150f15d Better path handling for decompile command 2024-07-07 15:37:20 -05:00
Yoshi Askharoun af0d7291aa Add default values for common compiler settings 2024-07-07 15:36:59 -05:00
Yoshi Askharoun 8792a4bd65 Update Spectre.Console 2024-07-07 15:36:38 -05:00
Yoshi Askharoun 179895dee0 Fix loading in IrisSourceRepository 2024-07-07 15:36:29 -05:00
Yoshi Askharoun f074577d6f Report line and column numbers for imports 2024-07-07 15:35:44 -05:00
Yoshi Askharoun 2dcf2fa069 Add error reporting for invalid qualified type names 2024-07-07 15:35:21 -05:00
Yoshi Askharoun 3192685f82 Add canonical instance encoding for constants 2024-07-07 15:34:27 -05:00
Yoshi Askharoun 7d408659dc Update Iris 2024-07-04 12:51:32 -05:00
Yoshi Askharoun 103e966cc5 ASM: Deduplicate imports 2024-07-04 12:51:32 -05:00
Yoshi Askharoun e940dafa1d UIXC: Set default output directory 2024-07-04 12:51:31 -05:00
Yoshi Askharoun 94519126da UIXC: Search for files in all included folders 2024-07-04 12:51:31 -05:00
Yoshi Askharoun 6be8a716ef Update UIXA compile test 2024-06-13 17:37:48 -05:00
Yoshi Askharoun d536297161 UIXC demo 2024-06-13 17:30:39 -05:00
Yoshi Askharoun a3d7e73b11 Add de/compile + settings 2024-06-13 17:30:27 -05:00
Yoshi Askharoun acd127c3a1 Add decompile command 2024-02-22 11:13:31 -06:00
Yoshi Askharoun 02078f1793 Support multiple compilands and shared binary data tables 2024-02-22 10:46:53 -06:00
Yoshi Askharoun 9aabdd40dc Use Spectre.Console.Cli 2024-02-22 08:27:49 -06:00
Yoshi Askharoun 70867c7ac6 Begin UIX compiler CLI 2024-02-22 08:07:38 -06:00
Yoshi Askharoun b8b10eb7a6 Have AsmMarkupLoader report lexer errors 2024-02-22 08:07:04 -06:00
Yoshi Askharoun 750cc37a91 Fix assembly names in imports 2024-02-22 08:06:34 -06:00
Yoshi Askharoun 46bfdb1c39 Simplify BOM check 2024-02-22 08:06:03 -06:00
Yoshi Askharoun 3c95c4e9ce Add binary encoded constants to lexer and disassembler 2024-02-21 09:10:18 -06:00
Yoshi Askharoun 1125127171 Update UIX 2024-02-21 09:09:27 -06:00
Yoshi Askharoun f576cae6c3 Fix assembly:// imports that don't specify a namespace 2024-02-19 00:10:15 -06:00
Yoshi Askharoun a68639eef0 Bump version to 0.0.2-beta 2024-02-18 22:26:25 -06:00
Yoshi Askharoun 9e332c5e9e Slightly more intelligent load result testing 2024-02-18 22:25:30 -06:00
Yoshi Askharoun 2cd9bfe943 Load constructor/method/event/property imports 2024-02-18 22:25:10 -06:00
Yoshi Askharoun 167ca01ba6 Add special logic for disassembling ILayout 2024-02-18 22:24:38 -06:00
Yoshi Askharoun c616be1475 Add ReassembleFromUIX test and more debugging 2024-02-16 20:40:14 -06:00
Yoshi Askharoun e74fc90974 Fix type resolution in Asm markup loader 2024-02-16 20:38:33 -06:00
Yoshi Askharoun 86f4842153 Add FullLoad extension 2024-02-16 20:38:18 -06:00
Yoshi Askharoun 772a0bf60b Add member imports to lexer, assembler, and disassembler 2024-02-16 20:37:47 -06:00
Yoshi Askharoun 6bc1880f2c More constant operand work in assembler 2024-02-12 23:14:53 -06:00
Yoshi Askharoun 03859bec6e Add inline XML to assembler and disassembler 2024-02-12 20:56:51 -06:00
Yoshi Askharoun f0f712f9d9 Add support for string-encodable constants to assembler and disassembler 2024-02-12 12:16:31 -06:00
Yoshi Askharoun 07840d5ee5 Update UIX 2024-02-12 01:10:16 -06:00
Yoshi Askharoun e7c8eae3d5 Update UIX 2024-02-12 00:40:52 -06:00
Yoshi Askharoun 8604bbe304 Update UIX 2024-02-11 20:43:30 -06:00
Yoshi Askharoun 25ec7ec9b7 Update Parse test sample 2024-02-11 20:39:21 -06:00
Yoshi Askharoun 8ced3e771a Add constants to disassembly 2024-02-11 20:39:07 -06:00
Yoshi Askharoun ebc0c4366e Fix incorrect formatting of offset indices in disassembly 2024-02-11 20:38:48 -06:00
Yoshi Askharoun 4056dc9f4f Add constants and qualified type names to lexer, and use instruction schema to decode UIB instrctions 2024-02-11 20:38:19 -06:00
Yoshi Askharoun 03f8974ac1 Add initial pass at constants and operands that reference labels 2024-02-11 11:51:59 -06:00
Yoshi Askharoun a0d5661a99 Oops, all IBodyItems! 2024-02-10 23:03:57 -06:00
Yoshi Askharoun 83c2b92635 Add UIB round-trip test 2024-02-10 21:39:07 -06:00
Yoshi Askharoun b3d4dc354f Update testA.uixa test file 2024-02-10 21:38:49 -06:00
Yoshi Askharoun 24866a81bd Fix namespaces being stripped from assembly imports 2024-02-10 21:38:37 -06:00
Yoshi Askharoun 97001fbd29 Fix export tables and remove static Load method 2024-02-10 21:38:18 -06:00
Yoshi Askharoun 93fa998caa Allow underscores, dashes, and digits in identifiers 2024-02-10 21:37:12 -06:00