mirror of
https://github.com/fadden/6502bench.git
synced 2024-12-30 14:31:13 +00:00
dfd5bcab1b
Early data sheets listed BRK as one byte, but RTI after a BRK skips the following byte, effectively making BRK a 2-byte instruction. Sometimes, such as when diassembling Apple /// SOS code, it's handy to treat it that way explicitly. This change makes two-byte BRKs optional, controlled by a checkbox in the project settings. In the system definitions it defaults to true for Apple ///, false for all others. ACME doesn't allow BRK to have an arg, and cc65 only allows it for 65816 code (?), so it's emitted as a hex blob for those assemblers. Anyone wishing to target those assemblers should stick to 1-byte mode. Extension scripts have to switch between formatting one byte of inline data and formatting an instruction with a one-byte operand. A helper function has been added to the plugin Util class. To get some regression test coverage, 2022-extension-scripts has been configured to use two-byte BRK. Also, added/corrected some SOS constants. See also issue #44. |
||
---|---|---|
.. | ||
Properties | ||
Address.cs | ||
Asm65.csproj | ||
CharEncoding.cs | ||
CpuDef.cs | ||
Formatter.cs | ||
Helper.cs | ||
Label.cs | ||
Number.cs | ||
OpDef.cs | ||
OpDescription.cs | ||
OpName.cs | ||
StatusFlags.cs | ||
StringOpFormatter.cs | ||
TriState16.cs |