Commit Graph

898 Commits

Author SHA1 Message Date
Andy McFadden 948e4a2bf2
Update README.md
Mention Wine v9.
2024-04-22 17:50:15 -07:00
Andy McFadden aa05aa7a80 Version 1.8.6-dev1 2024-04-22 17:39:25 -07:00
Andy McFadden 47b11b6797 Document new label placement setting 2024-04-22 17:35:21 -07:00
Andy McFadden 9e82ff8b88 Make label files look more like cc65 output
The cc65 docs say VICE labels start with '.'.  Also, output local
labels prefixed with '@', per ca65 convention.  The default output
file is now "labels.lbl".

Added some minimal documentation.

(issue #151)
2024-04-22 15:09:23 -07:00
Andy McFadden 4322a0c231 Add option to put labels on separate lines
We currently have two options for assembly code output, selected by
a checkbox in the application settings: always put labels on the same
lines as the instruction or data operand, or split the labels onto
their own line if they were wider than the label text field.

This change adds a third option, which puts labels on their own line
whenever possible.  Assemblers don't generally allow this for variable
assignment pseudo-ops like "foo = $1000", but it's accepted for most
other situations.  This is a cosmetic change to the output, and will
not affect the generated code.

The old true/false app setting will be disregarded.  "Split if too
long" will be used by default.

Added test 20280-label-placement to exercise the "split whenever
allowed" behavior.

The "export" function has a similar option that has not been updated
(for no particular reason other than laziness).

Also, simplified the app settings GetEnum / SetEnum calls, which
can infer the enumerated type from the arguments.  This should not
impact behavior.
2024-04-21 16:26:42 -07:00
Andy McFadden e425237783 First cut at label file generation
Some debuggers allow you to import a list of labels for addresses.
This adds a command that generates a file full of labels in a
specific format.  Currently the VICE monitor format is supported.

(issue #151)
2024-04-20 16:37:08 -07:00
Andy McFadden da91d9fc0e Allow arbitrary code list font sizes
The point size must be between 3 and 64, inclusive, just to avoid
doing anything too weird.  Also, added 14 to the drop-down.
2024-04-19 14:46:17 -07:00
Andy McFadden 8532cfb433 Rename menu item
Changed "File > Assemble" to "File > Generate Assembly".

Also, correctly mark a read-only text field as such.
2024-04-19 14:16:30 -07:00
David Youd 89df3278bc
Additional C64 .sym65 support files (#157)
* additional c64 symbols
2024-04-11 18:00:02 -07:00
Andy McFadden 9e9b12564e
Merge pull request #156 from c64cryptoboy/pr_c64_io_symbols
Added C64 IO symbols
2024-04-08 08:03:05 -07:00
David Youd 2f836d77a2 added c64 IO symbols 2024-04-07 20:09:34 -07:00
Andy McFadden 110a9ae818 Change the way app settings Apply button works
We were passing a reference to MainController in, and calling a
method on it, which is a little convoluted.  Now the main controller
subscribes to a "settings applied" event, and handles the update with
an event handler.

No change in behavior.
2024-03-02 14:48:06 -08:00
Andy McFadden c637d6549c Minor updates 2024-03-02 11:17:52 -08:00
Andy McFadden 1c79cddb47
Added note about wine-mono 2023-05-24 10:52:29 -07:00
Andy McFadden cee8fa3cbf Version 1.8.5 2023-05-12 15:56:43 -07:00
Andy McFadden a8aa871109 Version 1.8.5-dev2 2023-05-10 10:08:30 -07:00
Andy McFadden 2f603b69c3 Fix format overwrite test
A SOS binary had situation were an instruction was being reformatted
as inline data by an extension script.  The code that was supposed
to detect and prevent this had a bug that caused it to only look at
the first byte.  The resulting confusion caused the program to crash.

(issue #150)
2023-05-10 10:07:15 -07:00
Andy McFadden 7ebf976279 Fix display of Rockwell long op descrs 2023-05-04 17:29:57 -07:00
Andy McFadden 72d8498fe0 Minor tweaks 2023-04-17 09:48:01 -07:00
Andy McFadden ca50730611 Update comments 2023-04-14 13:46:40 -07:00
Andy McFadden 08243bf19c Remove unused PNG from project manifest 2023-03-30 17:25:19 -07:00
Andy McFadden 74cc55de29 Tweak grid border 2023-02-15 20:48:57 -08:00
Andy McFadden f46d8f4920 Merge branch 'master' of https://github.com/fadden/6502bench 2023-02-14 14:04:52 -08:00
Andy McFadden d22d35c4df Version 1.8.5-dev1 2023-02-14 14:04:30 -08:00
Andy McFadden 31d4bf8bfa Fix transparency in C64 visualizer
GIF only allows for one transparent palette entry.

(issue #145)
2023-02-14 14:03:38 -08:00
Andy McFadden 3ffca60066
Update README.md 2023-01-30 16:20:50 -08:00
Andy McFadden edc92cf5d6 Version 1.8.4 2023-01-09 09:14:28 -08:00
Andy McFadden a83b0e73da Version 1.8.4-dev2 2023-01-05 08:57:51 -08:00
Andy McFadden 7adec9f725 Increase JSON size limit for project files
The JavaScriptSerializer class throws an exception if the JSON data
exceeds a certain size.  The default limit is 2MB, which is relatively
easy to hit because of the verbosity of the serialized data.

Super Mario Bros needs about 1MB of JSON for a binary with 32KB + gfx.
Using that as a guide, we need 32x the source file size for a
thoroughly-documented project.  We currently limit the max binary size
to 1MB for practical reasons, so a cap of 32MB should cover us.

This change raises the limit to 64MB, with a slightly higher limit on
the deserialization side because we add newlines for readability.

This is more of a workaround than a fix, but it should do for now.

(issue #137)
2023-01-05 08:45:26 -08:00
Andy McFadden 58d794f535 Increase C64 font char count limit to 512 2023-01-04 10:09:28 -08:00
Andy McFadden 4f64a936ed Add URL to NOTICE file 2022-12-31 16:04:54 -08:00
Andy McFadden 426db27b5a Version 1.8.4-dev1 2022-07-31 09:44:35 -07:00
Andy McFadden 5d7503686c Minor regression test fix 2022-07-31 09:41:37 -07:00
Andy McFadden c1a8ce519e
Merge pull request #133 from absindx/symbol-snes-coprocessor
Added SNES coprocessor symbol file
2022-07-09 11:04:24 -07:00
absindx 0e2d190d28 Add SNES coprocessor symbol file 2022-07-10 01:56:44 +09:00
absindx f3d255c1a9 Fix SNES symbol file
Added an address mask to support mirroring of I/O registers.
Changed to specify the access direction of address.
Fixed a definition with different addresses but duplicate label names.
(`OAMDATA`, `VMDATAL`, `VMDATAH`, `CGDATA`)
2022-07-10 01:37:28 +09:00
Andy McFadden dcab984f3b Fix formatting 2022-05-23 15:45:25 -07:00
Andy McFadden 072c66bc8c
Update README.md 2022-05-22 13:13:42 -07:00
Andy McFadden 80ffd5f534
Update README.md 2022-05-22 12:59:04 -07:00
Andy McFadden 4c60f329c7 Tweak SourceNotes 2022-05-22 12:48:41 -07:00
Andy McFadden ce1a6d0109 Version 1.8.3 2022-05-18 08:23:32 -07:00
Andy McFadden b8314b7f30 Version 1.8.3-dev3 2022-05-01 11:10:37 -07:00
Andy McFadden 8b1e70fa58 Expand C64 sprite visualizer
Added fonts and sprite sheets.  Updated documentation.
2022-05-01 11:09:41 -07:00
Andy McFadden 663a3d0230 Version 1.8.3-dev2 2022-05-01 09:03:46 -07:00
Andy McFadden 0878854759 Fix crash in font picker
It's possible to have multiple fonts with the same font family.
Don't use the list add method that throws an exception when it
finds a duplicate key.
2022-04-29 09:00:01 -07:00
Andy McFadden 6e52f9986c Version 1.8.3-dev1 2022-04-06 14:24:53 -07:00
Andy McFadden d9fe0b5471 Fix crash in OMF converter tool
The OMF converter calls some of the project update routines at a
point where the data file hasn't been fully formed, making it a bit
fragile.
2022-04-06 14:20:11 -07:00
Andy McFadden 0ad30521ec Version 1.8.2 2022-03-07 14:57:28 -08:00
Andy McFadden 42fe037b55 Update copyright date in "about" 2022-03-02 09:37:18 -08:00
Andy McFadden 13dca8b78c More tweaks to def sym editing
If you edit an existing symbol, the "is the label unique" test will
always false-positive match itself, so we have to explicitly handle
that case.  Dialogs like Edit Instruction Operand make things a bit
more complicated because they don't flush results to the symbol
table immediately, which means the symbol we pass into the Edit Def
Symbol dialog to edit isn't necessarily the one we need to exclude
from the label uniqueness test.

The dialog was using the initial value as both "original" and
"initial", which caused some issues.  We now pass both values in.

Also, removed some dead code identified by VS.
2022-03-02 08:13:46 -08:00