mirror of
https://github.com/fadden/6502bench.git
synced 2024-12-04 11:49:58 +00:00
Update 64tass code gen
64tass v1.55.2176 added a missing undocumented op, so we can remove the workaround unless we're configured for an older version.
This commit is contained in:
parent
478afa542e
commit
3a02132694
@ -127,6 +127,8 @@ namespace SourceGen.AsmGen {
|
|||||||
|
|
||||||
// Version we're coded against.
|
// Version we're coded against.
|
||||||
private static CommonUtil.Version V1_53 = new CommonUtil.Version(1, 53, 1515);
|
private static CommonUtil.Version V1_53 = new CommonUtil.Version(1, 53, 1515);
|
||||||
|
private static CommonUtil.Version V1_54 = new CommonUtil.Version(1, 54, 1900);
|
||||||
|
private static CommonUtil.Version V1_55 = new CommonUtil.Version(1, 55, 2176);
|
||||||
private static CommonUtil.Version V1_56 = new CommonUtil.Version(1, 56, 2625);
|
private static CommonUtil.Version V1_56 = new CommonUtil.Version(1, 56, 2625);
|
||||||
|
|
||||||
// Pseudo-op string constants.
|
// Pseudo-op string constants.
|
||||||
@ -410,11 +412,15 @@ namespace SourceGen.AsmGen {
|
|||||||
return null;
|
return null;
|
||||||
} else if (op == OpDef.OpSHA_DPIndIndexY) {
|
} else if (op == OpDef.OpSHA_DPIndIndexY) {
|
||||||
// not recognized ($93)
|
// not recognized ($93)
|
||||||
return null;
|
if (mAsmVersion < V1_55) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (op == OpDef.OpWDM_WDM) {
|
if (op == OpDef.OpWDM_WDM) {
|
||||||
// 64tass v1.54 doesn't like this to have an operand. Output as hex.
|
// 64tass v1.53 doesn't know what this is.
|
||||||
|
// 64tass v1.55 doesn't like this to have an operand.
|
||||||
|
// Output as hex.
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return string.Empty; // indicate original is fine
|
return string.Empty; // indicate original is fine
|
||||||
|
@ -166,15 +166,15 @@ code, but also needs to know how to handle the corner cases.</p>
|
|||||||
|
|
||||||
<h3><a name="64tass">64tass</a></h3>
|
<h3><a name="64tass">64tass</a></h3>
|
||||||
|
|
||||||
<p>Tested versions: v1.53.1515, v1.54.1900, v1.56.2625
|
<p>Tested versions: v1.53.1515, v1.54.1900, v1.55.2176, v1.56.2625
|
||||||
<a href="https://sourceforge.net/projects/tass64/">[web site]</a></p>
|
<a href="https://sourceforge.net/projects/tass64/">[web site]</a></p>
|
||||||
|
|
||||||
<p>Bugs:</p>
|
<p>Bugs:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>[Fixed in v1.54.2176?]
|
<li>[Fixed in v1.55.2176]
|
||||||
Undocumented opcode <code>SHA (ZP),Y</code> ($93) is not supported;
|
Undocumented opcode <code>SHA (ZP),Y</code> ($93) is not supported;
|
||||||
the assembler appears to be expecting <code>SHA ABS,X</code> instead.</li>
|
the assembler appears to be expecting <code>SHA ABS,X</code> instead.</li>
|
||||||
<li>[Fixed in v1.54.2176?] WDM is not supported.</li>
|
<li>[Fixed in v1.55.2176] WDM is not supported.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<p>Quirks:</p>
|
<p>Quirks:</p>
|
||||||
|
@ -182,7 +182,7 @@ L1124 rra ($ff),y
|
|||||||
_L1166 sta ($ff),y
|
_L1166 sta ($ff),y
|
||||||
.byte $92
|
.byte $92
|
||||||
|
|
||||||
L1169 .byte $93,$ff
|
L1169 sha ($ff),y
|
||||||
sty $ff,x
|
sty $ff,x
|
||||||
sta $ff,x
|
sta $ff,x
|
||||||
stx $ff,y
|
stx $ff,y
|
||||||
|
@ -182,7 +182,7 @@ L1124 rra ($00),y
|
|||||||
_L1166 sta ($00),y
|
_L1166 sta ($00),y
|
||||||
.byte $92
|
.byte $92
|
||||||
|
|
||||||
L1169 .byte $93,$00
|
L1169 sha ($00),y
|
||||||
sty $00,x
|
sty $00,x
|
||||||
sta $00,x
|
sta $00,x
|
||||||
stx $00,y
|
stx $00,y
|
||||||
|
@ -182,7 +182,7 @@ L1124 rra (L0080),y
|
|||||||
_L1166 sta (L0080),y
|
_L1166 sta (L0080),y
|
||||||
.byte $92
|
.byte $92
|
||||||
|
|
||||||
L1169 .byte $93,$80
|
L1169 sha (L0080),y
|
||||||
sty L0080,x
|
sty L0080,x
|
||||||
sta L0080,x
|
sta L0080,x
|
||||||
stx L0080,y
|
stx L0080,y
|
||||||
|
Loading…
Reference in New Issue
Block a user