Commit Graph

62 Commits

Author SHA1 Message Date
Chris Pressey b38b94ed67 `sixtypical` and `dcc6502-adapter` run under Python 3 by default. 2023-03-07 22:17:11 +00:00
Chris Pressey 023a415a14 Don't search for filenames given on cmdline in the include path. 2019-10-23 10:32:26 +01:00
Chris Pressey d408e740ed Establish an `include` directory and `--include-path` option. 2019-10-22 15:10:55 +01:00
Chris Pressey 175c07781a First cut at include files. 2019-10-22 12:54:04 +01:00
Chris Pressey ea788264f7 Make test as intended. It fails atm. Simplify driver code. 2019-10-22 10:18:56 +01:00
Chris Pressey 3d88226058 Implement --prune-unreachable-routines. 2019-10-22 09:41:30 +01:00
Chris Pressey 40d9c57d64 Fix test, dump format. 2019-10-21 21:23:14 +01:00
Chris Pressey 7187fa6285 Refactor: move to dedicated module. 2019-10-21 15:41:17 +01:00
Chris Pressey bcc256aa5d Checkpoint. 2019-10-21 15:07:54 +01:00
Chris Pressey 894fb1a0f2 Refine the callgraph algorithm. Still incomplete though. 2019-10-21 14:43:21 +01:00
Chris Pressey 58dc68f838 Merge branch 'develop-0.21' into construct-callgraph 2019-10-21 14:08:06 +01:00
Chris Pressey a966a496d0 Bump version number. 2019-10-21 14:07:41 +01:00
Chris Pressey 87a2f70092 First cut at constructing a call graph. 2019-10-21 14:03:35 +01:00
Chris Pressey 2e2e80664e Forbid nested `with interrupts` blocks, and more refactoring. 2019-05-14 15:01:10 +01:00
Chris Pressey 0c65954bc5 Updates to README. Fix awkward punctuation in usage message. 2019-04-16 11:37:46 +01:00
Chris Pressey a10f1c6528 Replace --run option with terser --run-on option. 2019-04-16 10:35:59 +01:00
Chris Pressey ce8e83908b First cut at a --run option for sixtypical, replacing loadngo.sh. 2019-04-11 16:53:43 +01:00
Chris Pressey 652ab1dc5c Clean up ArgumentParser usage message, add --version argument. 2019-04-10 10:42:50 +01:00
Chris Pressey a0328b8840 Store type information in SymbolTable shared across phases. 2019-04-10 08:48:33 +01:00
Chris Pressey b19267d3ba Checkpoint import of changes for version 0.19. 2019-04-08 11:50:54 +01:00
Chris Pressey 0593ce6a66 Move merge_programs() out of main. Handle missing -o options. 2018-09-07 09:26:11 +01:00
Chris Pressey 8ce787a797 Inheritance hierarchy; binding is a little less awful. 2018-09-07 09:10:20 +01:00
Chris Pressey 99a0d5624a Awful binding, but at least this code isn't in main anymore. 2018-09-06 18:25:29 +01:00
Chris Pressey 24f093b1db Make all serialize() methods take addr() as an arg, not kwarg. 2018-09-06 18:11:47 +01:00
Chris Pressey 0a91d6bbc0 Rename method for more distinction/clarity. 2018-09-06 17:21:43 +01:00
Chris Pressey 10062fe2fb Fix whitespace (but not sorting) issue in --dump-fallthru-info. 2018-09-06 16:32:48 +01:00
Chris Pressey 4bba75857f --output cmdline argument, serialize() returns an array of bytes. 2018-09-06 16:18:41 +01:00
Chris Pressey 3fd7e52bc7 Reduce number of errors under Python 3 another smidge. 2018-09-06 14:21:29 +01:00
Chris Pressey 89fa8361a8 Remove --prelude, reform and document --output-formats. 2018-04-23 13:18:01 +01:00
Chris Pressey 2ca843ece7 Begin hooking the fallthru analysis up to the compilation phase. 2018-04-05 10:52:14 +01:00
Chris Pressey ac24f98dd3 Vastly simplify the fallthru analysis algorithm. 2018-04-05 09:57:14 +01:00
Chris Pressey b1bcc21ffc Go slightly further with the serialization. 2018-04-04 16:22:14 +01:00
Chris Pressey 30e839033c First cut at serialization of fallthru-optimized routines. 2018-04-04 15:09:48 +01:00
Chris Pressey aecea9b6a3 Optomize dump() abstraction. (You muss optomize, always optomize.) 2018-04-04 14:20:56 +01:00
Chris Pressey e39dbf68ed Call it fall_in_map. 2018-04-04 14:16:49 +01:00
Chris Pressey 9c196efe25 Abstraction for dumping JSON info. 2018-04-04 14:13:53 +01:00
Chris Pressey 448849ac4b Successfully break cycle. 2018-04-04 14:01:17 +01:00
Chris Pressey 50433ac860 Find cycles in fallthru map. Try to break them; not right, yet. 2018-04-04 13:37:32 +01:00
Chris Pressey d883816298 --optimize-fallthru and --dump-fallthru-info options. 2018-04-04 11:54:50 +01:00
Chris Pressey a0d3ea8167 Add a dedicated module for a dedicated FallthruAnalyzer. 2018-04-04 11:09:39 +01:00
Chris Pressey b33998cddc First cut at building fallthru map. Needs tests. 2018-03-29 15:07:44 +01:00
Chris Pressey 0093c7b7d9 First cut at support for targetting the Atari 2600. 2018-03-28 14:20:53 +01:00
Chris Pressey 6744ad29a9 Beginnings of modularity. 2018-03-27 16:23:22 +01:00
Chris Pressey d9e625db30 Clean up driver code, add filename to error messages. 2018-03-27 15:55:29 +01:00
Chris Pressey b1e9df0d45 Add --output-format and --origin command-line options. 2018-03-13 13:33:01 +00:00
Chris Pressey 72efecbb1a Support different preludes for different archs (c64 and vic20 now.) 2018-03-06 17:00:39 +00:00
Chris Pressey dbba7cc7b9 Use ArgumentParser instead of OptionParser. 2018-03-06 16:28:34 +00:00
Chris Pressey ed1ed3eb5d Always analyze before compiling. 2018-02-06 16:14:44 +00:00
Chris Pressey 15072eff52 The evaluator doesn't add much and keeps falling behind; remove it. 2018-02-05 13:17:23 +00:00
Chris Pressey cf679b293a Ability to --debug analysis. Make 16-bit addition test pass. 2017-12-07 11:49:15 +00:00