1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-12-26 04:30:52 +00:00
80 Change Log
Andy McFadden edited this page 2024-08-19 13:18:31 -07:00

A detailed log of changes, in reverse chronological order.

2024/08/19 v1.9.0

2024/08/09 v1.9.0-alpha2

New features:

  • Added auto-save (#161).

Other changes:

  • The "seek nearby targets" feature is now disabled by default for new projects.

2024/07/20 v1.9.0-alpha1

Bug fixes:

  • Fixed crash that happened when max operand width wasn't set in settings file.

2024/07/08 v1.9.0-dev3

New features:

  • Added "fancy" formatting for long comments (#111).

Other changes:

  • Address table formatter now looks at project/platform symbols (#160).
  • Full-line comment delimiter shown on-screen is now configurable.
  • Merlin 32 asm source generator now uses '*' for full-line comments.

Bug fixes:

  • Corrected Applesoft shape table visualizer.

2024/06/01 v1.9.0-dev2

New features:

  • Added binary includes (#144).

2024/05/23 v1.9.0-dev1

New features:

  • Added address region isolation (#139).

Other changes:

  • Disabled "prefer 32-bit" flag in build.

2022/05/04 v1.8.6

2024/04/22 v1.8.6-dev1

New features:

  • Added additional symbol files for C64 [@cryptoboy].
  • Added label file generator (#151).

Other changes:

  • Changed label placement from "if too long" checkbox to tri-state.
  • Code list font size can be set to arbitrary value.

2022/05/12 v1.8.5

2022/05/10 v1.8.5-dev2

Bug fixes:

  • Fix format overwrite test (#150).

Other changes:

  • Remove unused PNG from manifest.

2022/02/14 v1.8.5-dev1

Bug fixes:

  • Fixed transparency handling in C64 visualizer (#145).

2022/01/09 v1.8.4

2023/01/05 v1.8.4-dev2

Bug fixes:

  • Added workaround for project file size limitation (#137).

Other changes:

  • Increased maximum size of C64 font visualizers.

2022/07/31 v1.8.4-dev1

Other changes:

  • Updated SNES definitions [@absindx].

2022/05/18 v1.8.3

2022/05/01 v1.8.3-dev3

New features:

  • Added fonts and sprite sheets to C64 sprite visualizer.

2022/04/29 v1.8.3-dev2

Bug fixes:

  • Fixed crash in font picker.

2022/04/06 v1.8.3-dev1

Bug fixes:

  • Fixed crash in OMF converter tool.

2022/03/07 v1.8.2

Bug fixes:

  • Reworked editing of project symbols from the instruction operand editor.

2022/02/28 v1.8.2-dev1

Bug fixes:

  • Fixed crash when editing project symbols.

Other changes:

  • Updated project for VS Community 2022.

2022/01/22 v1.8.1

Bug fixes:

  • Fixed display of non-addressable symbols in HTML export.
  • Fixed status flag update for ROL instruction.

Other changes:

  • Updated visualization bitmap API to better suit indexed color.
  • Added jump to EQU line on double-click in Symbols window.
  • Changed default value for "comma-separated bulk data" setting.

2021/12/02 v1.8.1-dev1

New features:

  • Highlight operands that refer to the currently-selected line.
  • Highlight operands that refer to the selected Local Variable Table entry.

2021/11/14 v1.8.0

Bug fixes:

  • Fixed minor crash.

Other changes:

  • Minor changes to samples, tips, Apple II symbols.

2021/11/04 v1.8.0-beta1

New features:

  • Added Atari DVG visualizer.

Bug fixes:

  • Fixed handling of trailing backslash in comments.
  • Fixed long pause when using keyboard after selection jump.

Other changes:

  • Added offset field to PlSymbol. Updated StdInline to work correctly with address overlays.

2021/10/23 v1.8.0-alpha1

Bug fixes:

  • Fixed a crash when editing a .arend line.

Other changes:

  • Updated reference manual formatting.
  • Minor UI tweaks.

2021/10/16 v1.8.0-dev2

New features:

  • Added "uninitialized data" pseudo-op.
  • Added quick-set button to delimiter configuration tab in app settings.
  • Added "daily tips" to start screen.
  • Added "remove formatting" action.
  • Added "StdInline" extension script, for common inline data formats.
  • Show line/byte counts in Info window when multiple lines are selected.

Bug fixes:

  • Fixed a few issues introduced with the address region changes.

2021/10/08 v1.8.0-dev1

New features:

  • Reworked the way addresses are handled (issue #107):
    • Replaced linear list of start points with a hierarchy of nested address regions.
    • Added non-addressable areas.
    • Added region pre-labels (issue #109).
    • Added relative addressing.

Other changes:

  • Moved reference manual to "docs" area, so it's viewable from the web.

Bug fixes:

  • Fixed resize crash (issue #108).
  • Fixed editing of high-ASCII L1 strings (issue #110).

2021/08/16 1.7.5

Other changes:

  • Fixed keyboard focus after deletion of selected item.

Bug fixes:

  • Fixed DCI string edge case.

2021/08/09 1.7.5-dev4

Other changes:

  • Allow single-character DCI strings (issue #102).

Bug fixes:

  • Fixed arrow key behavior in code list (issue #105). Fixed some related focus issues.
  • Fixed 64tass code gen edge case (",k") (issue #104).

2021/08/01 1.7.5-dev3

New features:

  • Added symbols for Super Nintendo Entertainment System (SNES).

Other changes:

  • Loosened restrictions on string formatting (issue #100).
  • Updated ACME code generation for assembler v0.97.

Bug fixes:

  • Fixed address table formatter tagging of embedded instructions (issue #103).
  • Fixed 64tass source generation for non-loadable files (issue #98).
  • Fixed "goto address" behavior in overlapping segments.

2021/07/20 1.7.5-dev2

Bug fixes:

  • Fixed width limitation in local variable editor (issue #96).

2021/07/04 1.7.5-dev1

New features:

  • Added symbol set for Oric Atmos (pull req #95).

Bug fixes:

  • Tightened .sym65 label parsing.

2021/06/08 1.7.4

Other changes:

  • Export to HTML 5 (was XHTML).
  • Moved tutorial to web site, added screen shots.
  • Split Apple IIgs I/O definitions into $E0/$E1 banks.

Bug fixes:

  • Corrected last offset calculation in Apple II hi-res visualizer (issue #94).
  • Fixed 24-bit MULTI_MASK, added test.
  • Minor UI fixes.

2020/10/23 1.7.3

Other changes:

  • Finished refactoring regression tests to better support 8-bit-only assemblers.

2020/10/18 1.7.3-dev2

New features:

  • Improved handling of C64 PRG files.

Other changes:

  • Renamed "hints" to "analyzer tags".

2020/10/11 1.7.3-dev1

New features:

  • Added support for W65C02S (65C02 with Rockwell and WDC extensions).

2020/09/24 1.7.2

Other changes:

  • Added screen holes to Apple II memory chart.
  • Show "ptr" for pointer use in cross-reference table.
  • Split "show cycle counts" into on-screen and asm gen parts. Added toolbar button.

Bug fixes:

  • Correctly update Message list when broken symbol ref is fixed.
  • Display cross references to multi-byte local vars correctly.

2020/08/23 1.7.2-dev1

New features:

  • Added Apple II screen memory chart tool.

Other changes:

  • Updated Apple II symbol files and visualizers.
  • Updated Apple /// symbols files and extension scripts.

Bug fixes:

  • Corrected analyzer's handling of BRKs.

2020/08/13 1.7.1

Other changes:

  • Added new symbols to Applesoft and F8ROM lists.
  • Added "no-table" mode to Applesoft shape table visualizer.

2020/07/30 1.7.0

Other changes:

  • Disabled "smart PLP" by default.
  • Updated DOS 3.3 symbols.
  • Expanded "apply platform symbols" feature.

2020/07/22 1.7.0-alpha1

New features:

  • Added operand wrap length option to app settings.
  • Added File > Reload External Files.

Other changes:

  • Added OMF conversion options: disable per-segment comments; offset segment by $0100.
  • Change un-smart PLP handling for 65816.
  • Tweaked default column widths for clipboard and Export.
  • Renamed PluginDll directory to PluginDllCache.
  • Expanded SGEC: support notes and long comments; added export feature.
  • Added more GS/OS constants.

Bug fixes:

  • Fixed crash associated with computer suspending while project open.

2020/07/11 1.7.0-dev2

New features:

  • Added ability to set the value of the Data Bank Register ('B').
  • Added "smart PLB" feature that handles common code patterns.
  • Added Apple IIgs OMF viewer and converter.
  • Added option to retain and use OMF relocation data when mapping operand to symbols. (Experimental)
  • Added "export" button to visualization editor.

Other changes:

  • Improved GS/OS call recognition and formatting.
  • Added Cxxx I/O locations in bank $e0 for Apple IIgs.
  • Separated Apple Disk ][ I/O addresses into new .sym65.
  • Updated A2-HP-CDA example.
  • Minor performance tweak to data analysis (big impact on large files).
  • Reworked regression tests to split 6502 and 65816 code.
  • Added Navigate > Jump to Operand (same as double-click on opcode).
  • Migrated from VS 2017 CE to VS 2019 CE. (No meaningful changes.)

Bug fixes:

  • Fixed bugs in analysis and generation of 65816 code.

2020/05/15 1.7.0-dev1

New features:

  • Added visualization generator for Atari AVG.
  • Added visualization generator for NES pattern tables.

Other changes:

  • Show "idx" for indexed accesses in References window.
  • Double-clicking on project properties opens editor with correct field selected.

Bug fixes:

  • Minor fixes to code analysis, cross-reference generation, and ACME asm.

2020/03/30 1.6.0

Bug fixes:

  • Various minor issues.

2020/03/24 1.6.0-alpha1

New features:

  • Allow custom colors in Notes.

Other changes:

  • Added a progress bar to HTML export.

Bug fixes:

  • Corrected project/platform cross-references.
  • Work around Merlin 32 issue.

2020/03/12 1.6.0-dev1

New features:

  • Added wireframe visualization.

Other changes:

  • Added "sprite sheets" to Apple II hi-res visualizer.
  • Minor UI improvements.

Bug fixes:

  • Corrected handling of no-op .ORG directives.

2020/01/27 1.5.0

New features:

  • Added Apple II shape table visualizer.

Bug fixes:

  • Various minor issues.

2020/01/14 1.5.0-alpha1

New features:

  • Added file concatenation tool.
  • Added file slicer tool.

Other changes:

  • Updated project file format to improve diffs.
  • Various UI improvements.

Bug fixes:

  • Fixed various local variable table issues.

2019/12/26 1.5.0-dev3

New features:

  • Added animated visualizations.
  • Added GIF generation to HTML exporter.
  • Made "bulk" data formatting more configurable.
  • Updated "set address" to operate on ranges.

2019/12/07 1.5.0-dev2

New features:

  • Added visualization generator interface to extension scripts.
  • Added scripts for Apple II bitmaps, Atari 2600 graphics, and C64 sprites.
  • Added display of code/data/junk percentages to status bar.

2019/11/19 1.5.0-dev1

New features:

  • Added non-unique local labels.
  • Added label annotations.
  • Added "go to last change".

Other changes:

  • Added "apply platform symbols" experiment.
  • Added "discard changes?" confirmation to project properties editor.
  • Tweaked line-folding code.

Bug fixes:

  • Added workaround for GridSplitter lockup.
  • Fix output of local variables that start with '_' in 64tass output.

2019/10/30 1.4.0

Other changes:

  • Rearranged tutorial files, updated some text.
  • Tweaked the "nearby label" finder to find DATA-1.
  • Improved handling of "hidden" LV tables.

Bug fixes:

  • Crashing bug in selection management.

2019/10/27 1.4.0-beta1

New features:

  • Added read-only mode for projects with problems.
  • Added "erase" as a platform symbol option.

Other changes:

  • Added Apple-1 symbols.
  • Platform/project address symbols are now limited to positive 24-bit values.

2019/10/25 1.4.0-alpha1

New features:

  • Added message list to show subtle problems.
  • Added instruction chart.

Other changes:

  • Created Navigate menu, put some stuff there.
  • Slightly improved the Info panel.
  • Added inline data formatting and extension scripts to the tutorial.

Bug fixes:

  • Fixed embedded instruction edge case.
  • Some status flag values were wrong.

2019/10/19 1.4.0-dev2

New features:

  • Added .junk/.align directives.
  • Added I/O-direction-specific symbol declarations.
  • Added platform symbol address mirroring.
  • Made 1-byte vs. 2-byte BRK a project property.
  • Added "find previous".

Other changes:

  • Fully style main code list (issue #50). Added optional "dark" color scheme.
  • Improved navigation back to a local variable entry.
  • Changed the "quick set" combo boxes to have immediate actions.

Bug fixes:

  • Changed plugin symbol table handling to facilitate proper updates.

2019/10/08 1.4.0-dev1

New features:

  • Platform and project symbols now have explicit widths.
  • Extension script formatting capabilities have been expanded.

Other changes:

  • ProDOS 8 symbol file and script have been enhanced.

2019/10/06 1.3.2

Bug fixes:

2019/10/01 1.3.1

Bug fixes:

2019/09/27 1.3.0

Other changes:

  • Tweaked HTML output.

Bug fixes:

  • Various minor issues.

2019/09/21 1.3.0-alpha1

Other changes:

  • Added prefixes to symbol names in Apple II ROM .sym65.
  • Improved operand edit dialogs.
  • Changed split-address table formatter to also handle non-split tables.
  • Apply platform/project symbols to Numeric/Address data items.
  • Work around some assembler quirks.

Bug fixes:

  • Fix HTML output (wasn't being escaped).
  • Prevent data formats from overlapping code formats.

2019/09/13 1.3.0-dev6

New features:

  • Added "export" to text or HTML.

2019/09/09 1.3.0-dev5

New features:

  • Added local variable tables.
  • Reworked the instruction operand edit dialog.

Other changes:

  • "Smart" PLP handling is now optional.
  • Highlight non-default flags.
  • Tweaked PETSCII DCI handling.
  • Reworked multi-encoding output in 64tass.

Bug fixes:

  • Fixed issue #47.

2019/08/20 1.3.0-dev4

Other changes:

  • Changed the way ASCII is handled in 64tass.

2019/08/19 1.3.0-dev3

New features:

  • Added support for multiple character encodings.
    • Various parts of the UI updated to allow the encoding to be specified.
    • Added C64 PETSCII and screen codes.
    • Updated the string scanners to work with different encodings, and include control characters as valid string data (e.g. CR/LF).
    • Updated the assembly source generators to output appropriate code.
    • Made string and character operand delimiters configurable, so you can tell at a glance how something is encoded.

Other changes:

  • Updated cc65 for v2.18. Tweaked 64tass output.

2019/08/04 1.3.0-dev2

New features:

  • Added partial support for ACME cross-assembler.

Bug fixes:

  • Minor UI fixes.

2019/08/02 1.3.0-dev1

New features:

  • Added Apple /// SOS MLI inline call support.

Other changes:

  • Changed handling of BRK to treat it as a single-byte instruction with no operand.
  • Broke all existing plugins by requiring explicit C# interface declarations.

Bug fixes:

  • Fixed copying of regression test data in MakeDist.
  • Fixed "your plugin is hosed" dialog.

2019/07/29 1.2.0

2019/07/21 1.2.0-beta1

Other changes:

  • Ported entire user interface from WinForms to WPF.
  • Added crash handler that writes uncaught exceptions to CrashLog.txt.

2019/04/19 1.1.0

Bug fixes:

  • Don't crash when assembling if the assemblers have never been configured.

2019/04/15 1.1.0-dev3

New features:

  • Added optional annotation of auto-labels.

Other changes:

  • Added more detail to cross-reference window.

2018/11/12 1.1.0-dev2

New features:

  • Added "Format As Word" (Ctrl+W).

Bug fixes:

  • Work around cc65 single-pass behavior.
  • Work around Merlin 32 instruction parsing bug.

Other changes:

  • Made double-click on opcode of partial labels (e.g. LDA #<label) jump to label.
  • Added 2014-label-dp regression test.

2018/10/26 1.1.0-dev1

New features:

  • Generalized assembler configuration. Output column widths may now be set separately for each assembler.
  • Added 64tass assembler support.
  • Added setting to insert spaces between bytes in the Bytes column.

Bug fixes:

  • Changed the glyph used to indicate embedded instructions. The previous one didn't render correctly on Win7 or Linux.

Other changes:

  • Added a "cross-assembler bugs & quirks" section to the manual.

2018/10/16 1.0.0

Bug fixes:

  • Fixed goto-by-offset, which would occasionally not find the destination.

2018/10/12 1.0.0-beta2

New features:

  • Added some symbols for C64, C128, and Atari Lynx.

Bug fixes:

  • Fixed selection highlight update (crash).
  • Fixed add-label shortcut for adjusted operands.
  • Fixed code list column width save/restore.

Other changes:

  • Improved behavior under Mono. No longer crashing on startup. Gets kinda funky though.
  • Recognize mouse thumb button as navigate-back (just like web browsers).

2018/10/09 1.0.0-beta1

Other changes:

  • Improved hinting. Added keyboard shortcuts, and changed behavior to only hint the first byte on each selected line.
  • Merged "edit operand" and "edit data format" into combined "edit operand".
  • Added a keyboard shortcut for disabling the uncategorized data analyzer.
  • Added additional tutorials.
  • Merged a couple of RuntimeData READMEs into the main HTML documentation.
  • Misc documentation cleanup.

2018/10/07 1.0.0-alpha3

New features:

  • Added split-address table formatter.
  • Save & restore main window location and maximization state.
  • Added Apple /// symbols (courtesy David Schmidt).
  • Added placeholder Atari Lynx definition (+ 65CS02 declaration).
  • Added first-word-is-load-addr parameter to system defs, primarily for C64 binaries.

Bug fixes:

  • Don't crash when single-byte instructions have a single-byte data format left over from a previous life.
  • Fixed some Mono compatibility issues.

Other changes:

  • Renamed undocumented 6502 opcodes to match Unintended Opcodes doc.
  • Added some hotkeys, removed others.
  • Changed cc65 generator to output v2.17-compatible source when assembler binary not found.
  • Flipped the Name and Value columns in the Symbols window.
  • Edited / expanded documentation.

2018/09/28 1.0.0-alpha2

Bug fixes:

  • Fixed crash on startup.

2018/09/28 1.0.0-alpha1

Initial release.