1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-07-13 14:29:23 +00:00
6502bench/SourceGen/RuntimeData/Apple
Andy McFadden dfd5bcab1b Optionally treat BRKs as two-byte instructions
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.
2019-10-09 14:55:56 -07:00
..
A3-IO.sym65 More Apple /// details 2018-09-29 00:31:32 -04:00
A3-ROM.sym65 More Apple /// details 2018-09-29 00:31:32 -04:00
Applesoft.sym65 Update Apple II data files 2019-10-03 15:18:59 -07:00
Cxxx-IO.sym65 Update Apple II data files 2019-10-03 15:18:59 -07:00
DOS33.sym65 Update Apple II data files 2019-10-03 15:18:59 -07:00
F8-ROM.sym65 Check formatted string structure at load time 2019-10-06 17:07:07 -07:00
GSOS.cs Make address translation available to extension scripts 2019-10-06 18:13:39 -07:00
GSOS.sym65 Initial file commit 2018-09-28 10:05:11 -07:00
IIgs-ROM.sym65 Initial file commit 2018-09-28 10:05:11 -07:00
IIgs-Toolbox.cs Make address translation available to extension scripts 2019-10-06 18:13:39 -07:00
ProDOS8.cs Format ProDOS 8 parameter blocks 2019-10-07 15:42:40 -07:00
ProDOS8.sym65 Tweak comments 2019-10-08 17:46:00 -07:00
SOS.cs Optionally treat BRKs as two-byte instructions 2019-10-09 14:55:56 -07:00
SOS.sym65 Optionally treat BRKs as two-byte instructions 2019-10-09 14:55:56 -07:00