mirror of
https://github.com/fadden/6502bench.git
synced 2024-12-11 13:50:13 +00:00
Change some words
Replace "hint" in a few more places. Mention W65C02 in main README. State that new PRG feature is only enabled for 64tass.
This commit is contained in:
parent
345dff7765
commit
67c713ea7d
@ -44,7 +44,8 @@ and [visualizations](https://youtu.be/lSvEr5nCHbY) are available.
|
|||||||
#### Features in Detail ####
|
#### Features in Detail ####
|
||||||
|
|
||||||
Analyzer:
|
Analyzer:
|
||||||
- Support for 6502, 65C02, and 65816, including undocumented opcodes.
|
- Support for 6502, 65C02, and 65816, including undocumented opcodes
|
||||||
|
and the W65C02 extensions.
|
||||||
- Hinting mechanism allows manual identification of code, data, and inline
|
- Hinting mechanism allows manual identification of code, data, and inline
|
||||||
data.
|
data.
|
||||||
- Editable labels are generated for every branch destination and data target.
|
- Editable labels are generated for every branch destination and data target.
|
||||||
@ -115,7 +116,11 @@ SourceGen does not currently support these. While you can generate source
|
|||||||
for a binary larger than 64KB, most cross-assemblers will fail to assemble
|
for a binary larger than 64KB, most cross-assemblers will fail to assemble
|
||||||
it without additional edits.
|
it without additional edits.
|
||||||
|
|
||||||
To learn about other areas for improvement, visit the wiki section for the
|
The zero-page argument for the Rockwell BBR/BBS instructions cannot be
|
||||||
|
formatted.
|
||||||
|
|
||||||
|
To learn about other areas for potential future development, visit the
|
||||||
|
wiki section for the
|
||||||
[current "TO DO" list](https://github.com/fadden/6502bench/wiki/TO-DO-List).
|
[current "TO DO" list](https://github.com/fadden/6502bench/wiki/TO-DO-List).
|
||||||
|
|
||||||
To learn about the past, check the
|
To learn about the past, check the
|
||||||
|
@ -110,8 +110,8 @@ with any assembler, so it generally avoids platform-specific features.
|
|||||||
One exception to that is C64 PRG files.</p>
|
One exception to that is C64 PRG files.</p>
|
||||||
<p>PRG files start with a 16-bit value that tells the OS where the
|
<p>PRG files start with a 16-bit value that tells the OS where the
|
||||||
rest of the file should be loaded. The value is not usually part of
|
rest of the file should be loaded. The value is not usually part of
|
||||||
the source code, but rather is generated by the assembler, based on
|
the source code, but instead is generated by the assembler, based on
|
||||||
the address of the first byte generated. If SourceGen detects that
|
the address of the first byte output. If SourceGen detects that
|
||||||
a file is PRG, the source generators for some assemblers will suppress
|
a file is PRG, the source generators for some assemblers will suppress
|
||||||
the first 2 bytes, and instead pass appropriate meta-data (such as
|
the first 2 bytes, and instead pass appropriate meta-data (such as
|
||||||
an additional command-line option) to the assembler.</p>
|
an additional command-line option) to the assembler.</p>
|
||||||
@ -128,7 +128,8 @@ an additional command-line option) to the assembler.</p>
|
|||||||
</ul>
|
</ul>
|
||||||
<p>The definition is sufficiently narrow to avoid most false-positives.
|
<p>The definition is sufficiently narrow to avoid most false-positives.
|
||||||
If a file is being treated as PRG and you'd rather it weren't, you
|
If a file is being treated as PRG and you'd rather it weren't, you
|
||||||
can add a label or reformat the bytes.</p>
|
can add a label or reformat the bytes. This feature is currently only
|
||||||
|
enabled for 64tass.</p>
|
||||||
|
|
||||||
|
|
||||||
<h2><a name="assemble">Cross-Assembling Generated Code</a></h2>
|
<h2><a name="assemble">Cross-Assembling Generated Code</a></h2>
|
||||||
|
@ -6,14 +6,14 @@ using System.Collections.Generic;
|
|||||||
|
|
||||||
using PluginCommon;
|
using PluginCommon;
|
||||||
|
|
||||||
namespace RuntimeData.Test2011 {
|
namespace RuntimeData.Test20070 {
|
||||||
public class Test2011 : MarshalByRefObject, IPlugin, IPlugin_InlineJsr {
|
public class Test20070 : MarshalByRefObject, IPlugin, IPlugin_InlineJsr {
|
||||||
private IApplication mAppRef;
|
private IApplication mAppRef;
|
||||||
private byte[] mFileData;
|
private byte[] mFileData;
|
||||||
|
|
||||||
public string Identifier {
|
public string Identifier {
|
||||||
get {
|
get {
|
||||||
return "Test 2011-hinting";
|
return "Test 20070-hinting";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ namespace RuntimeData.Test2011 {
|
|||||||
mAppRef = appRef;
|
mAppRef = appRef;
|
||||||
mFileData = fileData;
|
mFileData = fileData;
|
||||||
|
|
||||||
mAppRef.DebugLog("Test2011(id=" + AppDomain.CurrentDomain.Id + "): prepare()");
|
mAppRef.DebugLog("Test20070(id=" + AppDomain.CurrentDomain.Id + "): prepare()");
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Unprepare() {
|
public void Unprepare() {
|
||||||
|
@ -12,15 +12,15 @@ prompted to do so).
|
|||||||
The files are:
|
The files are:
|
||||||
|
|
||||||
* Simple.dis65 : A trivial but correct project.
|
* Simple.dis65 : A trivial but correct project.
|
||||||
|
* Simple-BadATag.dis65 : An analyzer tag claims to cover a range outside
|
||||||
|
the file bounds. The program should tell you that it's discarding the
|
||||||
|
bad tags and continuing.
|
||||||
* Simple-BadCRC.dis65 : The data file CRC stored in the project file does
|
* Simple-BadCRC.dis65 : The data file CRC stored in the project file does
|
||||||
not match the data file contents. The program should tell you this and
|
not match the data file contents. The program should tell you this and
|
||||||
offer to let you locate the correct file.
|
offer to let you locate the correct file.
|
||||||
* Simple-BadDescLen.dis65 : An operand format descriptor covers a range
|
* Simple-BadDescLen.dis65 : An operand format descriptor covers a range
|
||||||
off the end of the file. THe program should tell you that it's discarding
|
off the end of the file. THe program should tell you that it's discarding
|
||||||
the bad format and continuing.
|
the bad format and continuing.
|
||||||
* Simple-BadHint.dis65 : A hint claims to cover a range outside the file
|
|
||||||
bounds. The program should tell you that it's discarding the bad hint
|
|
||||||
and continuing.
|
|
||||||
* Simple-BadJSON.dis65 : Garbage has been inserted into the JSON data
|
* Simple-BadJSON.dis65 : Garbage has been inserted into the JSON data
|
||||||
stream. The project load should fail with an appropriate message.
|
stream. The project load should fail with an appropriate message.
|
||||||
* Simple-BadLen.dis65 : The data file length stored in the project file
|
* Simple-BadLen.dis65 : The data file length stored in the project file
|
||||||
|
@ -23,7 +23,7 @@ If the leading number is between 10000 and 19999, inclusive, the test file
|
|||||||
will be loaded as a new project. A load address of $1000 is assumed.
|
will be loaded as a new project. A load address of $1000 is assumed.
|
||||||
The CPU type is determined by the last digit: 0 for 6502, 1 for 65C02,
|
The CPU type is determined by the last digit: 0 for 6502, 1 for 65C02,
|
||||||
2 for 65816, and 3 for W65C02. Undocumented opcodes are enabled. As with
|
2 for 65816, and 3 for W65C02. Undocumented opcodes are enabled. As with
|
||||||
all new projects, the first byte will be hinted as a code entry point. The
|
all new projects, the first byte will be tagged as a code start point. The
|
||||||
entry flags are currently set to emulation mode, but tests should not rely
|
entry flags are currently set to emulation mode, but tests should not rely
|
||||||
on that.
|
on that.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user