From 603cf3c9269a7bea7639d94fddb5fda474f055ec Mon Sep 17 00:00:00 2001 From: Andy McFadden Date: Mon, 27 Jan 2020 16:22:59 -0800 Subject: [PATCH] Update for v1.5.0 --- TO-DO-List.md | 30 ++++++------------------------ 1 file changed, 6 insertions(+), 24 deletions(-) diff --git a/TO-DO-List.md b/TO-DO-List.md index 606c401..b1b7c8f 100644 --- a/TO-DO-List.md +++ b/TO-DO-List.md @@ -29,10 +29,6 @@ Contents: ## Tier 1 ## - * Expand set of symbol definitions. Need C64, Atari, others; what's there - now is very Apple II-specific, because that's what I know. (Frankly, - the Apple II definitions could use a little work too.) - * Improve generated output * Aggregation of adjacent elements. ".dd1 $00 / .dd1 $01" can be output as ".dd1 $00,$01". @@ -68,14 +64,11 @@ Contents: dense-hex items are shown. Can be toggled with a keyboard shortcut. * Labeling improvements. - * Support non-unique local address labels. The label localizer can generate these, - but we want to be able to enter them into the code list directly. - One possibility is to allow specific names, like "loop" or "loop[0-9]" - to be entered even when they're not unique. The assembler would - decide what to do with them -- uniquify or localize. * Auto-detection of loop labels. Rename auto labels from "L1234" to "]LOOP" if the only references to it are short backward conditional branches. Should be fast enough to do in the on-screen list. + * Support for "anonymous" labels, like "3b" or "--". Assemblers vary + widely in what they support, so this may be hard to define. * Add "file format recognizers". Simplest form looks at filename and bits of files, and sets default @@ -93,8 +86,7 @@ Contents: is outside the ASCII range. Could be global, could be custom. * Extension script enhancements. - * Scripted viewers: runtime scripts that format data is text or - graphics when requested by the main app. Useful for viewing sprites, + * Add 2D line vector and 3D mesh visualizers. Useful for 3D games, Atari DVG, etc. * Define file access primitives so scripts have limited access to files outside the sandbox. Only useful if something needs data beyond @@ -202,9 +194,6 @@ Contents: * Better integration of Help, e.g. help buttons on editor dialogs. (I started out doing this, but stopped because things get weird when you try to shell-open a web page with an anchor string under Windows.) - * Move the view to the last change when undo or redo is hit. Alternatively, - have a key that jumps to the location of the last thing you changed. - (See https://github.com/fadden/6502bench/issues/25 for discussion.) * IntelliSense-style completion for symbols and constants. Might be best with more detailed annotation of constants. (See https://github.com/fadden/6502bench/issues/28) @@ -237,8 +226,8 @@ Contents: * Code generation improvements. * Some programs have short segments that are meant to be relocated, so you want to .ORG to the new address, and then a little while later .ORG back - to the main code flow. This situation could be detected automatically, - and appropriate "re-org" directives issued. + to the main code flow. We currently do this with two .ORGs, but it would + be better to do it with a "restore previous" assembler operation. * Allow different pseudo-ops for constants and addresses. Some assemblers support this, e.g. cc65 has "=" for constants and ":=" for labels. If nothing else it makes the equate list easier to comprehend. @@ -279,10 +268,6 @@ Contents: * Use a non-JSON format for project files. A custom format would be more compact, easier to hand-edit, and yield better diffs. - * User-specifiable formatting for bitmaps and other chunks of data that - are a multiple of N bytes (essentially just a byte-per-line setting for - the "dense hex" format). - ## Tier 3 ## * Support Apple IIgs OMF. @@ -386,15 +371,12 @@ Contents: for an arbitrary selection. (A keyboard shortcut that rotates through the various numeric forms might be sufficient.) - * Some sort of "disassembly progress" indicator in the status bar. Maybe an - indication of code%, data%, inline-data%, uncategorized data%. - * Provide a way to define generated data. This is mostly useful when the target assembler supports the concept, e.g. Merlin's LUP directive. This might be too assembler-specific, although it's okay if the code list shows an expression and the assembled output has a dense-hex dump. - * Add a revision number to a platform symbol files, which are copied into + * Add a revision number to platform symbol files, which are copied into the project file. That way the user can know if they're using the correct version of RuntimeData symbol files. (Not convinced a single version number is the answer here.)