Commit Graph
100 Commits
Author SHA1 Message Date
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
Yoshi Askharoun 3329591b5a Update UIX 2024-02-10 19:35:25 -06:00
Yoshi Askharoun c8b5091fd9 [WIP] Implement more of AsmMarkupLoader 2024-02-10 19:19:40 -06:00
Yoshi Askharoun 69fd6b71a2 Fix exported type base name in disassembler 2024-02-09 09:18:50 -06:00
Yoshi Askharoun f4643bafe4 Update assembler test 2024-02-09 09:17:54 -06:00
Yoshi Askharoun 55cc3456f3 Add type import and export to parser test 2024-02-08 13:50:51 -06:00
Yoshi Askharoun 9a2893a146 Add type exports to disassembler 2024-02-08 13:32:44 -06:00
Yoshi Askharoun 42a6ea5795 Add type imports to disassembler 2024-02-08 10:52:01 -06:00
Yoshi Askharoun 3c2ae6a9cd Add type imports and exports to parser 2024-02-08 10:51:08 -06:00
Yoshi Askharoun 9e8ffe786b Deduplicate disassembly imports 2024-02-07 09:42:18 -06:00
Yoshi Askharoun e18d3ebdd7 Add Asm instructions to line number tables 2024-02-06 13:21:48 -06:00
Yoshi Askharoun 0ecca8cbbf Create object section encoder 2024-02-06 13:15:05 -06:00
Yoshi Askharoun 3928966f81 Remove unsused Instruction factories 2024-02-06 12:56:31 -06:00
Yoshi Askharoun b4da2a46d7 Add instruction schema and some type information 2024-02-06 12:55:46 -06:00
Yoshi Askharoun 59bc842e0a Add OperandDataType and rename LexerMaps 2024-02-06 07:38:51 -06:00
Yoshi Askharoun 5a0473e499 Add section directives 2024-02-05 09:23:46 -06:00
Yoshi Askharoun 804bca823b Add Identifier property to Directive 2024-02-04 22:23:10 -06:00
Yoshi Askharoun 8bc1b983be Rename Import.cs 2024-02-04 22:10:10 -06:00
Yoshi Askharoun 934c20ccdf Add line and column numbers to lexer tree 2024-02-04 22:09:21 -06:00
Yoshi Askharoun 6823ef5296 Move body and import lexers to separate files 2024-02-04 21:44:59 -06:00
Yoshi Askharoun 152a3c1acb Fix Import inheritance 2024-02-04 21:40:07 -06:00
Yoshi Askharoun 88ec3a0ccf Add expectations to lexer 2024-02-04 18:51:17 -06:00
Yoshi Askharoun 1b1148bd58 Move syntax interfaces to separate file, add IDirective interface 2024-02-04 18:50:45 -06:00
Yoshi Askharoun cf3419c435 Add Assembler tests 2024-02-03 20:51:54 -06:00
Yoshi Askharoun d95fcab104 Begin Assembly markup loader 2024-02-03 20:51:45 -06:00
Yoshi Askharoun 2d4c6d5f6d Merge branch 'master' of https://github.com/yoshiask/ZuneUIXTools 2024-02-02 23:30:08 -06:00
Yoshi Askharoun c57aee3b3b Update Iris 2024-02-02 23:27:56 -06:00
Yoshi Askharoun f5dcc0206f Begin markup assembler 2024-02-02 23:26:55 -06:00
Yoshi Askharoun a605da9ce1 Update UIX 2024-02-01 11:43:07 -06:00
Yoshi Askharoun 2628aa422e Update test for namespace import 2024-02-01 11:43:03 -06:00
Yoshi Askharoun 601fd2b4fa Strip extra information from assembly imports 2024-02-01 11:42:48 -06:00
Yoshi Askharoun 738dc1e4ab Add NuGet properties 2024-01-31 20:28:50 -06:00
Yoshi Askharoun 8e03007e2e Add TempFile helper 2024-01-31 20:07:01 -06:00
Yoshi Askharoun a7535ed4d2 Rename Test1 2024-01-31 19:51:55 -06:00
Yoshi Askharoun a4415cb800 Use included test resources and add MarkupSystem fixture 2024-01-31 19:48:13 -06:00
Yoshi Askharoun a13c6b5e78 Add test files 2024-01-31 19:47:48 -06:00
Yoshi Askharoun 86500a4ec1 Exclude URI of current file from imports 2024-01-31 19:44:53 -06:00
Yoshi Askharoun 7d3bce3e2b Mark disassembled object section with label 2024-01-31 19:44:23 -06:00
Yoshi Askharoun 45475c5934 Exclude URI of current file from imports 2024-01-31 19:44:11 -06:00
Yoshi Askharoun bd31001a4f Add README 2024-01-31 19:06:33 -06:00
Yoshi Askharoun b2ae711337 Remove empty space after instructions with no operands 2024-01-31 18:44:31 -06:00
Yoshi Askharoun d29406b725 Improve formatting of Program.ToString() 2024-01-31 18:43:04 -06:00
Yoshi Askharoun f075fce9ec Implement disassembly for all instructions 2024-01-31 18:34:45 -06:00
Yoshi Askharoun 410848a29e Prefer using suffixes for instruction mnemonics 2024-01-31 18:33:40 -06:00
Yoshi Askharoun 0a205c2fa8 Use two-way mapping for mnemonics -> opcodes 2024-01-31 16:58:28 -06:00
Yoshi Askharoun d77d2953b8 Move syntax models to own folder 2024-01-31 09:21:30 -06:00
Yoshi Askharoun c54fab21e7 Begin UIB disassebler 2024-01-30 23:30:42 -06:00
Yoshi Askharoun 26ab2444f2 Store actual operand value 2024-01-30 23:30:11 -06:00
Yoshi Askharoun 199d2263e6 Allow for different kinds of imports 2024-01-30 22:44:48 -06:00
Yoshi Askharoun 810a6badac Print parsed program to test output 2024-01-29 22:09:51 -06:00
Yoshi Askharoun 19d65e8cc5 Make OperationMnemonicMap one-to-one 2024-01-29 22:09:39 -06:00