From 8109396c48f8c6abde5552b043a01f4043e8ceb2 Mon Sep 17 00:00:00 2001 From: Andy McFadden Date: Mon, 19 Oct 2020 15:01:02 -0700 Subject: [PATCH] Rework 201XX-char-encoding-X tests We have a single character-encoding test that is cloned 3x so we can exercise the different values for the project's default character set. It was a 65816 test because it tested 16-bit immediate char operands, but that's a very small part of it. The 65816-specific portion is now 20122-char-encoding. The rest is now 201{2,3,4}0-char-encoding-X. --- ...-char-encoding-a => 20120-char-encoding-a} | Bin 1093 -> 1100 bytes .../SGTestData/20120-char-encoding-a.dis65 | 467 ++++++++++++++++++ SourceGen/SGTestData/20122-char-encoding | Bin 0 -> 19 bytes .../SGTestData/20122-char-encoding-a.dis65 | 131 ----- .../SGTestData/20122-char-encoding.dis65 | 85 ++++ ...-char-encoding-s => 20130-char-encoding-p} | Bin 1093 -> 1100 bytes .../SGTestData/20130-char-encoding-p.dis65 | 467 ++++++++++++++++++ .../SGTestData/20132-char-encoding-p.dis65 | 131 ----- ...-char-encoding-p => 20140-char-encoding-s} | Bin 1093 -> 1100 bytes .../SGTestData/20140-char-encoding-s.dis65 | 467 ++++++++++++++++++ .../SGTestData/20142-char-encoding-s.dis65 | 131 ----- ...4tass.S => 20120-char-encoding-a_64tass.S} | 142 +----- ...-a_acme.S => 20120-char-encoding-a_acme.S} | 137 +---- ...-a_cc65.S => 20120-char-encoding-a_cc65.S} | 141 +----- .../Expected/20120-char-encoding-a_cc65.cfg | 11 + ...n32.S => 20120-char-encoding-a_merlin32.S} | 130 +---- .../Expected/20122-char-encoding_64tass.S | 24 + .../Expected/20122-char-encoding_acme.S | 18 + .../Expected/20122-char-encoding_cc65.S | 19 + ..._cc65.cfg => 20122-char-encoding_cc65.cfg} | 4 +- .../Expected/20122-char-encoding_merlin32.S | 13 + ...4tass.S => 20130-char-encoding-p_64tass.S} | 32 +- ...-p_acme.S => 20130-char-encoding-p_acme.S} | 29 +- ...-p_cc65.S => 20130-char-encoding-p_cc65.S} | 30 +- ...c65.cfg => 20130-char-encoding-p_cc65.cfg} | 4 +- ...n32.S => 20130-char-encoding-p_merlin32.S} | 23 +- ...4tass.S => 20140-char-encoding-s_64tass.S} | 32 +- ...-s_acme.S => 20140-char-encoding-s_acme.S} | 29 +- ...-s_cc65.S => 20140-char-encoding-s_cc65.S} | 30 +- ...c65.cfg => 20140-char-encoding-s_cc65.cfg} | 4 +- ...n32.S => 20140-char-encoding-s_merlin32.S} | 23 +- .../SGTestData/Source/20120-char-encoding.S | 148 ++++++ .../SGTestData/Source/20122-char-encoding.S | 141 +----- 33 files changed, 1886 insertions(+), 1157 deletions(-) rename SourceGen/SGTestData/{20122-char-encoding-a => 20120-char-encoding-a} (72%) create mode 100644 SourceGen/SGTestData/20120-char-encoding-a.dis65 create mode 100644 SourceGen/SGTestData/20122-char-encoding delete mode 100644 SourceGen/SGTestData/20122-char-encoding-a.dis65 create mode 100644 SourceGen/SGTestData/20122-char-encoding.dis65 rename SourceGen/SGTestData/{20142-char-encoding-s => 20130-char-encoding-p} (72%) create mode 100644 SourceGen/SGTestData/20130-char-encoding-p.dis65 delete mode 100644 SourceGen/SGTestData/20132-char-encoding-p.dis65 rename SourceGen/SGTestData/{20132-char-encoding-p => 20140-char-encoding-s} (72%) create mode 100644 SourceGen/SGTestData/20140-char-encoding-s.dis65 delete mode 100644 SourceGen/SGTestData/20142-char-encoding-s.dis65 rename SourceGen/SGTestData/Expected/{20122-char-encoding-a_64tass.S => 20120-char-encoding-a_64tass.S} (66%) rename SourceGen/SGTestData/Expected/{20122-char-encoding-a_acme.S => 20120-char-encoding-a_acme.S} (64%) rename SourceGen/SGTestData/Expected/{20122-char-encoding-a_cc65.S => 20120-char-encoding-a_cc65.S} (72%) create mode 100644 SourceGen/SGTestData/Expected/20120-char-encoding-a_cc65.cfg rename SourceGen/SGTestData/Expected/{20122-char-encoding-a_merlin32.S => 20120-char-encoding-a_merlin32.S} (66%) create mode 100644 SourceGen/SGTestData/Expected/20122-char-encoding_64tass.S create mode 100644 SourceGen/SGTestData/Expected/20122-char-encoding_acme.S create mode 100644 SourceGen/SGTestData/Expected/20122-char-encoding_cc65.S rename SourceGen/SGTestData/Expected/{20122-char-encoding-a_cc65.cfg => 20122-char-encoding_cc65.cfg} (80%) create mode 100644 SourceGen/SGTestData/Expected/20122-char-encoding_merlin32.S rename SourceGen/SGTestData/Expected/{20132-char-encoding-p_64tass.S => 20130-char-encoding-p_64tass.S} (93%) rename SourceGen/SGTestData/Expected/{20132-char-encoding-p_acme.S => 20130-char-encoding-p_acme.S} (94%) rename SourceGen/SGTestData/Expected/{20132-char-encoding-p_cc65.S => 20130-char-encoding-p_cc65.S} (95%) rename SourceGen/SGTestData/Expected/{20132-char-encoding-p_cc65.cfg => 20130-char-encoding-p_cc65.cfg} (59%) rename SourceGen/SGTestData/Expected/{20132-char-encoding-p_merlin32.S => 20130-char-encoding-p_merlin32.S} (95%) rename SourceGen/SGTestData/Expected/{20142-char-encoding-s_64tass.S => 20140-char-encoding-s_64tass.S} (93%) rename SourceGen/SGTestData/Expected/{20142-char-encoding-s_acme.S => 20140-char-encoding-s_acme.S} (94%) rename SourceGen/SGTestData/Expected/{20142-char-encoding-s_cc65.S => 20140-char-encoding-s_cc65.S} (95%) rename SourceGen/SGTestData/Expected/{20142-char-encoding-s_cc65.cfg => 20140-char-encoding-s_cc65.cfg} (59%) rename SourceGen/SGTestData/Expected/{20142-char-encoding-s_merlin32.S => 20140-char-encoding-s_merlin32.S} (95%) create mode 100644 SourceGen/SGTestData/Source/20120-char-encoding.S diff --git a/SourceGen/SGTestData/20122-char-encoding-a b/SourceGen/SGTestData/20120-char-encoding-a similarity index 72% rename from SourceGen/SGTestData/20122-char-encoding-a rename to SourceGen/SGTestData/20120-char-encoding-a index 0c146fcceb0f2359f3814e1ccafdcd807ceb6fe6..b1659535e01d400b8d17ac5b95d7c16f52df70ae 100644 GIT binary patch delta 69 zcmX@gafU;7rQ^zjK|1-HUG9~~3&=M9D delta 44 xcmX@Zag>8a;`bwi2~vWG3|2ZZtULrpP7IF>5;n?SWMUMbtjH|BS&mtk5deRT4<7&k diff --git a/SourceGen/SGTestData/20120-char-encoding-a.dis65 b/SourceGen/SGTestData/20120-char-encoding-a.dis65 new file mode 100644 index 0000000..60710bb --- /dev/null +++ b/SourceGen/SGTestData/20120-char-encoding-a.dis65 @@ -0,0 +1,467 @@ +### 6502bench SourceGen dis65 v1.0 ### +{ +"_ContentVersion":4, +"FileDataLength":1100, +"FileDataCrc32":1553512360, +"ProjectProps":{ +"CpuName":"6502", +"IncludeUndocumentedInstr":false, +"TwoByteBrk":false, +"EntryFlags":32702671, +"AutoLabelStyle":"Simple", +"AnalysisParams":{ +"AnalyzeUncategorizedData":true, +"DefaultTextScanMode":"LowHighAscii", +"MinCharsForString":4, +"SeekNearbyTargets":true, +"UseRelocData":false, +"SmartPlpHandling":false, +"SmartPlbHandling":true}, + +"PlatformSymbolFileIdentifiers":[], +"ExtensionScriptFileIdentifiers":[], +"ProjectSyms":{ +}}, + +"AddressMap":[{ +"Offset":0, +"Addr":4096}], +"TypeHints":[{ +"Low":0, +"High":0, +"Hint":"Code"}], +"StatusFlagOverrides":{ +}, + +"Comments":{ +"16":"inappropriate format should be ignored"}, + +"LongComments":{ +"-2147483647":{ +"Text":"Projected edited to format non-char operands as chars.", +"BoxMode":false, +"MaxWidth":80, +"BackgroundColor":0}}, + +"Notes":{ +}, + +"UserLabels":{ +}, + +"OperandFormats":{ +"0":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"2":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"4":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"6":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"8":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"10":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"12":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"14":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"16":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"18":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"20":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"22":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"24":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"29":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"30":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"31":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"32":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"33":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"35":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"37":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"39":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"41":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"43":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"45":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"47":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"50":{ +"Length":13, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"63":{ +"Length":14, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"78":{ +"Length":11, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"90":{ +"Length":15, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"106":{ +"Length":17, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"124":{ +"Length":18, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"143":{ +"Length":30, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"174":{ +"Length":95, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"270":{ +"Length":95, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"366":{ +"Length":60, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"426":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"427":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"428":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"429":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"430":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"431":{ +"Length":26, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"457":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"458":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"459":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"460":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"462":{ +"Length":60, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"522":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"523":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"524":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"525":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"526":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"527":{ +"Length":26, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"553":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"554":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"555":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"556":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"558":{ +"Length":15, +"Format":"StringReverse", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"574":{ +"Length":18, +"Format":"StringNullTerm", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"593":{ +"Length":84, +"Format":"StringNullTerm", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"678":{ +"Length":20, +"Format":"StringL8", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"699":{ +"Length":22, +"Format":"StringL16", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"722":{ +"Length":7, +"Format":"StringDci", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"730":{ +"Length":19, +"Format":"StringReverse", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"750":{ +"Length":23, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"774":{ +"Length":24, +"Format":"StringL8", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"799":{ +"Length":26, +"Format":"StringL16", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"826":{ +"Length":15, +"Format":"StringDci", +"SubFormat":"C64Screen", +"SymbolRef":null}}, + +"LvTables":{ +}, + +"Visualizations":[], +"VisualizationAnimations":[], +"VisualizationSets":{ +}, + +"RelocList":{ +}, + +"DbrValues":{ +}} diff --git a/SourceGen/SGTestData/20122-char-encoding b/SourceGen/SGTestData/20122-char-encoding new file mode 100644 index 0000000000000000000000000000000000000000..93a3f3868337778d891f8e022a8449058614826f GIT binary patch literal 19 Xcmb36eaK*?6T`|wVC2N`$RGg#RnG_{ literal 0 HcmV?d00001 diff --git a/SourceGen/SGTestData/20122-char-encoding-a.dis65 b/SourceGen/SGTestData/20122-char-encoding-a.dis65 deleted file mode 100644 index 6672afb..0000000 --- a/SourceGen/SGTestData/20122-char-encoding-a.dis65 +++ /dev/null @@ -1,131 +0,0 @@ -### 6502bench SourceGen dis65 v1.0 ### -{ -"_ContentVersion":2,"FileDataLength":1093,"FileDataCrc32":-1027700879,"ProjectProps":{ -"CpuName":"65816","IncludeUndocumentedInstr":false,"EntryFlags":32702671,"AutoLabelStyle":"Simple","AnalysisParams":{ -"AnalyzeUncategorizedData":true,"DefaultTextScanMode":"LowAscii","MinCharsForString":4,"SeekNearbyTargets":true}, -"PlatformSymbolFileIdentifiers":[],"ExtensionScriptFileIdentifiers":[],"ProjectSyms":{ -}}, -"AddressMap":[{ -"Offset":0,"Addr":4096}],"TypeHints":[{ -"Low":0,"High":0,"Hint":"Code"}],"StatusFlagOverrides":{ -}, -"Comments":{ -}, -"LongComments":{ -"-2147483647":{ -"Text":"Project edited to mark some non-ASCII operands as ASCII.","BoxMode":false,"MaxWidth":80,"BackgroundColor":0}, -"837":{ -"Text":"$00-ff block","BoxMode":false,"MaxWidth":80,"BackgroundColor":0}}, -"Notes":{ -}, -"UserLabels":{ -}, -"OperandFormats":{ -"4":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"6":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"8":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"10":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"12":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"14":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"16":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"18":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"20":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"22":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"24":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"26":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"28":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"32":{ -"Length":3,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"35":{ -"Length":3,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"38":{ -"Length":3,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"41":{ -"Length":3,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"47":{ -"Length":1,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"48":{ -"Length":1,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"49":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"50":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"51":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"53":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"55":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"57":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"59":{ -"Length":2,"Format":"NumericBE","SubFormat":"Ascii","SymbolRef":null}, -"61":{ -"Length":2,"Format":"NumericBE","SubFormat":"HighAscii","SymbolRef":null}, -"63":{ -"Length":2,"Format":"NumericBE","SubFormat":"C64Petscii","SymbolRef":null}, -"65":{ -"Length":2,"Format":"NumericBE","SubFormat":"C64Screen","SymbolRef":null}, -"68":{ -"Length":13,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"81":{ -"Length":14,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"96":{ -"Length":11,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"108":{ -"Length":15,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"124":{ -"Length":17,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"142":{ -"Length":18,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"161":{ -"Length":30,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"192":{ -"Length":95,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"288":{ -"Length":95,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"384":{ -"Length":60,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"445":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"449":{ -"Length":26,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"480":{ -"Length":60,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"541":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"545":{ -"Length":26,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"576":{ -"Length":15,"Format":"StringReverse","SubFormat":"C64Petscii","SymbolRef":null}, -"592":{ -"Length":18,"Format":"StringNullTerm","SubFormat":"C64Petscii","SymbolRef":null}, -"611":{ -"Length":84,"Format":"StringNullTerm","SubFormat":"C64Petscii","SymbolRef":null}, -"696":{ -"Length":20,"Format":"StringL8","SubFormat":"C64Petscii","SymbolRef":null}, -"717":{ -"Length":22,"Format":"StringL16","SubFormat":"C64Petscii","SymbolRef":null}, -"740":{ -"Length":7,"Format":"StringDci","SubFormat":"C64Petscii","SymbolRef":null}, -"748":{ -"Length":19,"Format":"StringReverse","SubFormat":"C64Screen","SymbolRef":null}, -"768":{ -"Length":24,"Format":"StringL8","SubFormat":"C64Screen","SymbolRef":null}, -"793":{ -"Length":26,"Format":"StringL16","SubFormat":"C64Screen","SymbolRef":null}, -"820":{ -"Length":15,"Format":"StringDci","SubFormat":"C64Screen","SymbolRef":null}}} diff --git a/SourceGen/SGTestData/20122-char-encoding.dis65 b/SourceGen/SGTestData/20122-char-encoding.dis65 new file mode 100644 index 0000000..d35c44b --- /dev/null +++ b/SourceGen/SGTestData/20122-char-encoding.dis65 @@ -0,0 +1,85 @@ +### 6502bench SourceGen dis65 v1.0 ### +{ +"_ContentVersion":4, +"FileDataLength":19, +"FileDataCrc32":-1063647034, +"ProjectProps":{ +"CpuName":"65816", +"IncludeUndocumentedInstr":false, +"TwoByteBrk":false, +"EntryFlags":32702671, +"AutoLabelStyle":"Simple", +"AnalysisParams":{ +"AnalyzeUncategorizedData":true, +"DefaultTextScanMode":"LowHighAscii", +"MinCharsForString":4, +"SeekNearbyTargets":true, +"UseRelocData":false, +"SmartPlpHandling":false, +"SmartPlbHandling":true}, + +"PlatformSymbolFileIdentifiers":[], +"ExtensionScriptFileIdentifiers":[], +"ProjectSyms":{ +}}, + +"AddressMap":[{ +"Offset":0, +"Addr":4096}], +"TypeHints":[{ +"Low":0, +"High":0, +"Hint":"Code"}], +"StatusFlagOverrides":{ +}, + +"Comments":{ +}, + +"LongComments":{ +}, + +"Notes":{ +}, + +"UserLabels":{ +}, + +"OperandFormats":{ +"4":{ +"Length":3, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"7":{ +"Length":3, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"10":{ +"Length":3, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"13":{ +"Length":3, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}}, + +"LvTables":{ +}, + +"Visualizations":[], +"VisualizationAnimations":[], +"VisualizationSets":{ +}, + +"RelocList":{ +}, + +"DbrValues":{ +}} diff --git a/SourceGen/SGTestData/20142-char-encoding-s b/SourceGen/SGTestData/20130-char-encoding-p similarity index 72% rename from SourceGen/SGTestData/20142-char-encoding-s rename to SourceGen/SGTestData/20130-char-encoding-p index 0c146fcceb0f2359f3814e1ccafdcd807ceb6fe6..b1659535e01d400b8d17ac5b95d7c16f52df70ae 100644 GIT binary patch delta 69 zcmX@gafU;7rQ^zjK|1-HUG9~~3&=M9D delta 44 xcmX@Zag>8a;`bwi2~vWG3|2ZZtULrpP7IF>5;n?SWMUMbtjH|BS&mtk5deRT4<7&k diff --git a/SourceGen/SGTestData/20130-char-encoding-p.dis65 b/SourceGen/SGTestData/20130-char-encoding-p.dis65 new file mode 100644 index 0000000..5113d89 --- /dev/null +++ b/SourceGen/SGTestData/20130-char-encoding-p.dis65 @@ -0,0 +1,467 @@ +### 6502bench SourceGen dis65 v1.0 ### +{ +"_ContentVersion":4, +"FileDataLength":1100, +"FileDataCrc32":1553512360, +"ProjectProps":{ +"CpuName":"6502", +"IncludeUndocumentedInstr":false, +"TwoByteBrk":false, +"EntryFlags":32702671, +"AutoLabelStyle":"Simple", +"AnalysisParams":{ +"AnalyzeUncategorizedData":true, +"DefaultTextScanMode":"C64Petscii", +"MinCharsForString":4, +"SeekNearbyTargets":true, +"UseRelocData":false, +"SmartPlpHandling":false, +"SmartPlbHandling":true}, + +"PlatformSymbolFileIdentifiers":[], +"ExtensionScriptFileIdentifiers":[], +"ProjectSyms":{ +}}, + +"AddressMap":[{ +"Offset":0, +"Addr":4096}], +"TypeHints":[{ +"Low":0, +"High":0, +"Hint":"Code"}], +"StatusFlagOverrides":{ +}, + +"Comments":{ +"16":"inappropriate format should be ignored"}, + +"LongComments":{ +"-2147483647":{ +"Text":"Projected edited to format non-char operands as chars.", +"BoxMode":false, +"MaxWidth":80, +"BackgroundColor":0}}, + +"Notes":{ +}, + +"UserLabels":{ +}, + +"OperandFormats":{ +"0":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"2":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"4":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"6":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"8":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"10":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"12":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"14":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"16":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"18":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"20":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"22":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"24":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"29":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"30":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"31":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"32":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"33":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"35":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"37":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"39":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"41":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"43":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"45":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"47":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"50":{ +"Length":13, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"63":{ +"Length":14, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"78":{ +"Length":11, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"90":{ +"Length":15, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"106":{ +"Length":17, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"124":{ +"Length":18, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"143":{ +"Length":30, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"174":{ +"Length":95, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"270":{ +"Length":95, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"366":{ +"Length":60, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"426":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"427":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"428":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"429":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"430":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"431":{ +"Length":26, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"457":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"458":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"459":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"460":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"462":{ +"Length":60, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"522":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"523":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"524":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"525":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"526":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"527":{ +"Length":26, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"553":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"554":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"555":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"556":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"558":{ +"Length":15, +"Format":"StringReverse", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"574":{ +"Length":18, +"Format":"StringNullTerm", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"593":{ +"Length":84, +"Format":"StringNullTerm", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"678":{ +"Length":20, +"Format":"StringL8", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"699":{ +"Length":22, +"Format":"StringL16", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"722":{ +"Length":7, +"Format":"StringDci", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"730":{ +"Length":19, +"Format":"StringReverse", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"750":{ +"Length":23, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"774":{ +"Length":24, +"Format":"StringL8", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"799":{ +"Length":26, +"Format":"StringL16", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"826":{ +"Length":15, +"Format":"StringDci", +"SubFormat":"C64Screen", +"SymbolRef":null}}, + +"LvTables":{ +}, + +"Visualizations":[], +"VisualizationAnimations":[], +"VisualizationSets":{ +}, + +"RelocList":{ +}, + +"DbrValues":{ +}} diff --git a/SourceGen/SGTestData/20132-char-encoding-p.dis65 b/SourceGen/SGTestData/20132-char-encoding-p.dis65 deleted file mode 100644 index d4dc0a4..0000000 --- a/SourceGen/SGTestData/20132-char-encoding-p.dis65 +++ /dev/null @@ -1,131 +0,0 @@ -### 6502bench SourceGen dis65 v1.0 ### -{ -"_ContentVersion":2,"FileDataLength":1093,"FileDataCrc32":-1027700879,"ProjectProps":{ -"CpuName":"65816","IncludeUndocumentedInstr":false,"EntryFlags":32702671,"AutoLabelStyle":"Simple","AnalysisParams":{ -"AnalyzeUncategorizedData":true,"DefaultTextScanMode":"C64Petscii","MinCharsForString":4,"SeekNearbyTargets":true}, -"PlatformSymbolFileIdentifiers":[],"ExtensionScriptFileIdentifiers":[],"ProjectSyms":{ -}}, -"AddressMap":[{ -"Offset":0,"Addr":4096}],"TypeHints":[{ -"Low":0,"High":0,"Hint":"Code"}],"StatusFlagOverrides":{ -}, -"Comments":{ -}, -"LongComments":{ -"-2147483647":{ -"Text":"Project edited to mark some non-ASCII operands as ASCII.","BoxMode":false,"MaxWidth":80,"BackgroundColor":0}, -"837":{ -"Text":"$00-ff block","BoxMode":false,"MaxWidth":80,"BackgroundColor":0}}, -"Notes":{ -}, -"UserLabels":{ -}, -"OperandFormats":{ -"4":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"6":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"8":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"10":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"12":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"14":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"16":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"18":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"20":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"22":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"24":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"26":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"28":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"32":{ -"Length":3,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"35":{ -"Length":3,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"38":{ -"Length":3,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"41":{ -"Length":3,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"47":{ -"Length":1,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"48":{ -"Length":1,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"49":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"50":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"51":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"53":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"55":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"57":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"59":{ -"Length":2,"Format":"NumericBE","SubFormat":"Ascii","SymbolRef":null}, -"61":{ -"Length":2,"Format":"NumericBE","SubFormat":"HighAscii","SymbolRef":null}, -"63":{ -"Length":2,"Format":"NumericBE","SubFormat":"C64Petscii","SymbolRef":null}, -"65":{ -"Length":2,"Format":"NumericBE","SubFormat":"C64Screen","SymbolRef":null}, -"68":{ -"Length":13,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"81":{ -"Length":14,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"96":{ -"Length":11,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"108":{ -"Length":15,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"124":{ -"Length":17,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"142":{ -"Length":18,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"161":{ -"Length":30,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"192":{ -"Length":95,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"288":{ -"Length":95,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"384":{ -"Length":60,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"445":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"449":{ -"Length":26,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"480":{ -"Length":60,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"541":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"545":{ -"Length":26,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"576":{ -"Length":15,"Format":"StringReverse","SubFormat":"C64Petscii","SymbolRef":null}, -"592":{ -"Length":18,"Format":"StringNullTerm","SubFormat":"C64Petscii","SymbolRef":null}, -"611":{ -"Length":84,"Format":"StringNullTerm","SubFormat":"C64Petscii","SymbolRef":null}, -"696":{ -"Length":20,"Format":"StringL8","SubFormat":"C64Petscii","SymbolRef":null}, -"717":{ -"Length":22,"Format":"StringL16","SubFormat":"C64Petscii","SymbolRef":null}, -"740":{ -"Length":7,"Format":"StringDci","SubFormat":"C64Petscii","SymbolRef":null}, -"748":{ -"Length":19,"Format":"StringReverse","SubFormat":"C64Screen","SymbolRef":null}, -"768":{ -"Length":24,"Format":"StringL8","SubFormat":"C64Screen","SymbolRef":null}, -"793":{ -"Length":26,"Format":"StringL16","SubFormat":"C64Screen","SymbolRef":null}, -"820":{ -"Length":15,"Format":"StringDci","SubFormat":"C64Screen","SymbolRef":null}}} diff --git a/SourceGen/SGTestData/20132-char-encoding-p b/SourceGen/SGTestData/20140-char-encoding-s similarity index 72% rename from SourceGen/SGTestData/20132-char-encoding-p rename to SourceGen/SGTestData/20140-char-encoding-s index 0c146fcceb0f2359f3814e1ccafdcd807ceb6fe6..b1659535e01d400b8d17ac5b95d7c16f52df70ae 100644 GIT binary patch delta 69 zcmX@gafU;7rQ^zjK|1-HUG9~~3&=M9D delta 44 xcmX@Zag>8a;`bwi2~vWG3|2ZZtULrpP7IF>5;n?SWMUMbtjH|BS&mtk5deRT4<7&k diff --git a/SourceGen/SGTestData/20140-char-encoding-s.dis65 b/SourceGen/SGTestData/20140-char-encoding-s.dis65 new file mode 100644 index 0000000..f26618e --- /dev/null +++ b/SourceGen/SGTestData/20140-char-encoding-s.dis65 @@ -0,0 +1,467 @@ +### 6502bench SourceGen dis65 v1.0 ### +{ +"_ContentVersion":4, +"FileDataLength":1100, +"FileDataCrc32":1553512360, +"ProjectProps":{ +"CpuName":"6502", +"IncludeUndocumentedInstr":false, +"TwoByteBrk":false, +"EntryFlags":32702671, +"AutoLabelStyle":"Simple", +"AnalysisParams":{ +"AnalyzeUncategorizedData":true, +"DefaultTextScanMode":"C64ScreenCode", +"MinCharsForString":4, +"SeekNearbyTargets":true, +"UseRelocData":false, +"SmartPlpHandling":false, +"SmartPlbHandling":true}, + +"PlatformSymbolFileIdentifiers":[], +"ExtensionScriptFileIdentifiers":[], +"ProjectSyms":{ +}}, + +"AddressMap":[{ +"Offset":0, +"Addr":4096}], +"TypeHints":[{ +"Low":0, +"High":0, +"Hint":"Code"}], +"StatusFlagOverrides":{ +}, + +"Comments":{ +"16":"inappropriate format should be ignored"}, + +"LongComments":{ +"-2147483647":{ +"Text":"Projected edited to format non-char operands as chars.", +"BoxMode":false, +"MaxWidth":80, +"BackgroundColor":0}}, + +"Notes":{ +}, + +"UserLabels":{ +}, + +"OperandFormats":{ +"0":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"2":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"4":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"6":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"8":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"10":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"12":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"14":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"16":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"18":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"20":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"22":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"24":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"29":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"30":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"31":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"32":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"33":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"35":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"37":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"39":{ +"Length":2, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"41":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"43":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"45":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"47":{ +"Length":2, +"Format":"NumericBE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"50":{ +"Length":13, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"63":{ +"Length":14, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"78":{ +"Length":11, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"90":{ +"Length":15, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"106":{ +"Length":17, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"124":{ +"Length":18, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"143":{ +"Length":30, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"174":{ +"Length":95, +"Format":"StringGeneric", +"SubFormat":"Ascii", +"SymbolRef":null}, + +"270":{ +"Length":95, +"Format":"StringGeneric", +"SubFormat":"HighAscii", +"SymbolRef":null}, + +"366":{ +"Length":60, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"426":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"427":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"428":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"429":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"430":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"431":{ +"Length":26, +"Format":"StringGeneric", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"457":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"458":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"459":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"460":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"462":{ +"Length":60, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"522":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"523":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"524":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"525":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"526":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"527":{ +"Length":26, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"553":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"554":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"555":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"556":{ +"Length":1, +"Format":"NumericLE", +"SubFormat":"Hex", +"SymbolRef":null}, + +"558":{ +"Length":15, +"Format":"StringReverse", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"574":{ +"Length":18, +"Format":"StringNullTerm", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"593":{ +"Length":84, +"Format":"StringNullTerm", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"678":{ +"Length":20, +"Format":"StringL8", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"699":{ +"Length":22, +"Format":"StringL16", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"722":{ +"Length":7, +"Format":"StringDci", +"SubFormat":"C64Petscii", +"SymbolRef":null}, + +"730":{ +"Length":19, +"Format":"StringReverse", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"750":{ +"Length":23, +"Format":"StringGeneric", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"774":{ +"Length":24, +"Format":"StringL8", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"799":{ +"Length":26, +"Format":"StringL16", +"SubFormat":"C64Screen", +"SymbolRef":null}, + +"826":{ +"Length":15, +"Format":"StringDci", +"SubFormat":"C64Screen", +"SymbolRef":null}}, + +"LvTables":{ +}, + +"Visualizations":[], +"VisualizationAnimations":[], +"VisualizationSets":{ +}, + +"RelocList":{ +}, + +"DbrValues":{ +}} diff --git a/SourceGen/SGTestData/20142-char-encoding-s.dis65 b/SourceGen/SGTestData/20142-char-encoding-s.dis65 deleted file mode 100644 index 55db2c8..0000000 --- a/SourceGen/SGTestData/20142-char-encoding-s.dis65 +++ /dev/null @@ -1,131 +0,0 @@ -### 6502bench SourceGen dis65 v1.0 ### -{ -"_ContentVersion":2,"FileDataLength":1093,"FileDataCrc32":-1027700879,"ProjectProps":{ -"CpuName":"65816","IncludeUndocumentedInstr":false,"EntryFlags":32702671,"AutoLabelStyle":"Simple","AnalysisParams":{ -"AnalyzeUncategorizedData":true,"DefaultTextScanMode":"C64ScreenCode","MinCharsForString":4,"SeekNearbyTargets":true}, -"PlatformSymbolFileIdentifiers":[],"ExtensionScriptFileIdentifiers":[],"ProjectSyms":{ -}}, -"AddressMap":[{ -"Offset":0,"Addr":4096}],"TypeHints":[{ -"Low":0,"High":0,"Hint":"Code"}],"StatusFlagOverrides":{ -}, -"Comments":{ -}, -"LongComments":{ -"-2147483647":{ -"Text":"Project edited to mark some non-ASCII operands as ASCII.","BoxMode":false,"MaxWidth":80,"BackgroundColor":0}, -"837":{ -"Text":"$00-ff block","BoxMode":false,"MaxWidth":80,"BackgroundColor":0}}, -"Notes":{ -}, -"UserLabels":{ -}, -"OperandFormats":{ -"4":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"6":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"8":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"10":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"12":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"14":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"16":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"18":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"20":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"22":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"24":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"26":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"28":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"32":{ -"Length":3,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"35":{ -"Length":3,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"38":{ -"Length":3,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"41":{ -"Length":3,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"47":{ -"Length":1,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"48":{ -"Length":1,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"49":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"50":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"51":{ -"Length":2,"Format":"NumericLE","SubFormat":"Ascii","SymbolRef":null}, -"53":{ -"Length":2,"Format":"NumericLE","SubFormat":"HighAscii","SymbolRef":null}, -"55":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"57":{ -"Length":2,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"59":{ -"Length":2,"Format":"NumericBE","SubFormat":"Ascii","SymbolRef":null}, -"61":{ -"Length":2,"Format":"NumericBE","SubFormat":"HighAscii","SymbolRef":null}, -"63":{ -"Length":2,"Format":"NumericBE","SubFormat":"C64Petscii","SymbolRef":null}, -"65":{ -"Length":2,"Format":"NumericBE","SubFormat":"C64Screen","SymbolRef":null}, -"68":{ -"Length":13,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"81":{ -"Length":14,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"96":{ -"Length":11,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"108":{ -"Length":15,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"124":{ -"Length":17,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"142":{ -"Length":18,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"161":{ -"Length":30,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"192":{ -"Length":95,"Format":"StringGeneric","SubFormat":"Ascii","SymbolRef":null}, -"288":{ -"Length":95,"Format":"StringGeneric","SubFormat":"HighAscii","SymbolRef":null}, -"384":{ -"Length":60,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"445":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Petscii","SymbolRef":null}, -"449":{ -"Length":26,"Format":"StringGeneric","SubFormat":"C64Petscii","SymbolRef":null}, -"480":{ -"Length":60,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"541":{ -"Length":1,"Format":"NumericLE","SubFormat":"C64Screen","SymbolRef":null}, -"545":{ -"Length":26,"Format":"StringGeneric","SubFormat":"C64Screen","SymbolRef":null}, -"576":{ -"Length":15,"Format":"StringReverse","SubFormat":"C64Petscii","SymbolRef":null}, -"592":{ -"Length":18,"Format":"StringNullTerm","SubFormat":"C64Petscii","SymbolRef":null}, -"611":{ -"Length":84,"Format":"StringNullTerm","SubFormat":"C64Petscii","SymbolRef":null}, -"696":{ -"Length":20,"Format":"StringL8","SubFormat":"C64Petscii","SymbolRef":null}, -"717":{ -"Length":22,"Format":"StringL16","SubFormat":"C64Petscii","SymbolRef":null}, -"740":{ -"Length":7,"Format":"StringDci","SubFormat":"C64Petscii","SymbolRef":null}, -"748":{ -"Length":19,"Format":"StringReverse","SubFormat":"C64Screen","SymbolRef":null}, -"768":{ -"Length":24,"Format":"StringL8","SubFormat":"C64Screen","SymbolRef":null}, -"793":{ -"Length":26,"Format":"StringL16","SubFormat":"C64Screen","SymbolRef":null}, -"820":{ -"Length":15,"Format":"StringDci","SubFormat":"C64Screen","SymbolRef":null}}} diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding-a_64tass.S b/SourceGen/SGTestData/Expected/20120-char-encoding-a_64tass.S similarity index 66% rename from SourceGen/SGTestData/Expected/20122-char-encoding-a_64tass.S rename to SourceGen/SGTestData/Expected/20120-char-encoding-a_64tass.S index 91fd2b4..a941899 100644 --- a/SourceGen/SGTestData/Expected/20122-char-encoding-a_64tass.S +++ b/SourceGen/SGTestData/Expected/20120-char-encoding-a_64tass.S @@ -1,15 +1,10 @@ -;Project edited to mark some non-ASCII operands as ASCII. - .cpu "65816" +;Projected edited to format non-char operands as chars. + .cpu "6502" .enc "sg_hiascii" .cdef $20,$7e,$a0 .enc "sg_ascii" .cdef $20,$7e,$20 * = $1000 - .as - .xs - clc - xce - sep #$30 lda #'A' lda #'A' | $80 .enc "none" @@ -24,7 +19,7 @@ .enc "screen" ldx #'a' .enc "sg_ascii" - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f .enc "none" lda #$7f @@ -32,21 +27,8 @@ lda #$7f .enc "sg_ascii" lda #$0d - rep #$30 - .al - .xl - lda #'B' - lda #'B' | $80 - .enc "none" - lda #'B' - .enc "screen" - lda #'B' - sep #$30 - .as - .xs - rts + jmp L144B - .enc "sg_ascii" .byte 'C' .byte 'C' | $80 .enc "none" @@ -102,8 +84,10 @@ .byte $5f .byte $60 .text "abcdefghijklmnopqrstuvwxyz" - .enc "sg_ascii" - .text "{|}~" + .byte $7b + .byte $7c + .byte $7d + .byte $7e .byte $83 .enc "screen" .text " !",$22,"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW" @@ -114,8 +98,10 @@ .byte $1f .byte $40 .text "abcdefghijklmnopqrstuvwxyz" - .enc "sg_ascii" - .text "{|}~" + .byte $7b + .byte $7c + .byte $7d + .byte $7e .byte $84 .enc "none" .text "IICSTEP esrever" @@ -134,6 +120,8 @@ .enc "screen" .text "edoC neercS esrever" .byte $84 + .text "null-term screen code?@" + .byte $84 .ptext "Screen Code with length" .byte $84 .text $18,$00,"Screen Code with length2" @@ -141,7 +129,6 @@ .shift "Screen Code DCI" .byte $84 .byte $85 -;$00-ff block .byte $00 .byte $01 .byte $02 @@ -210,99 +197,10 @@ .byte $9d .byte $9e .byte $9f - .byte $a0 - .byte $a1 - .byte $a2 - .byte $a3 - .byte $a4 - .byte $a5 - .byte $a6 - .byte $a7 - .byte $a8 - .byte $a9 - .byte $aa - .byte $ab - .byte $ac - .byte $ad - .byte $ae - .byte $af - .byte $b0 - .byte $b1 - .byte $b2 - .byte $b3 - .byte $b4 - .byte $b5 - .byte $b6 - .byte $b7 - .byte $b8 - .byte $b9 - .byte $ba - .byte $bb - .byte $bc - .byte $bd - .byte $be - .byte $bf - .byte $c0 - .byte $c1 - .byte $c2 - .byte $c3 - .byte $c4 - .byte $c5 - .byte $c6 - .byte $c7 - .byte $c8 - .byte $c9 - .byte $ca - .byte $cb - .byte $cc - .byte $cd - .byte $ce - .byte $cf - .byte $d0 - .byte $d1 - .byte $d2 - .byte $d3 - .byte $d4 - .byte $d5 - .byte $d6 - .byte $d7 - .byte $d8 - .byte $d9 - .byte $da - .byte $db - .byte $dc - .byte $dd - .byte $de - .byte $df - .byte $e0 - .byte $e1 - .byte $e2 - .byte $e3 - .byte $e4 - .byte $e5 - .byte $e6 - .byte $e7 - .byte $e8 - .byte $e9 - .byte $ea - .byte $eb - .byte $ec - .byte $ed - .byte $ee - .byte $ef - .byte $f0 - .byte $f1 - .byte $f2 - .byte $f3 - .byte $f4 - .byte $f5 - .byte $f6 - .byte $f7 - .byte $f8 - .byte $f9 - .byte $fa - .byte $fb - .byte $fc - .byte $fd - .byte $fe + .enc "sg_hiascii" + .text " !",$a2,"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW" + .text "XYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~" .byte $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding-a_acme.S b/SourceGen/SGTestData/Expected/20120-char-encoding-a_acme.S similarity index 64% rename from SourceGen/SGTestData/Expected/20122-char-encoding-a_acme.S rename to SourceGen/SGTestData/Expected/20120-char-encoding-a_acme.S index 803abe0..9bd365a 100644 --- a/SourceGen/SGTestData/Expected/20122-char-encoding-a_acme.S +++ b/SourceGen/SGTestData/Expected/20120-char-encoding-a_acme.S @@ -1,11 +1,6 @@ -;Project edited to mark some non-ASCII operands as ASCII. - !cpu 65816 +;Projected edited to format non-char operands as chars. + !cpu 6502 * = $1000 - !as - !rs - clc - xce - sep #$30 lda #'A' lda #'A' | $80 lda #$c1 @@ -14,22 +9,12 @@ ldx #'a' | $80 ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - !al - !rl - lda #'B' - lda #'B' | $80 - lda #$c2 - lda #$42 - sep #$30 - !as - !rs - rts + jmp L144B !byte 'C' !byte 'C' | $80 @@ -74,7 +59,10 @@ !byte $5f !byte $60 !pet "abcdefghijklmnopqrstuvwxyz" - !text "{|}~" + !byte $7b + !byte $7c + !byte $7d + !byte $7e !byte $83 !scr " !",$22,"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVW" !scr "XYZ[" @@ -84,7 +72,10 @@ !byte $1f !byte $40 !scr "abcdefghijklmnopqrstuvwxyz" - !text "{|}~" + !byte $7b + !byte $7c + !byte $7d + !byte $7e !byte $84 !pet "IICSTEP esrever" !byte $84 @@ -101,6 +92,8 @@ !byte $84 !scr "edoC neercS esrever" !byte $84 + !scr "null-term screen code?@" + !byte $84 !scr $17,"Screen Code with length" !byte $84 !scr $18,$00,"Screen Code with length2" @@ -108,7 +101,6 @@ !scr "Screen Code DC",$c9 !byte $84 !byte $85 -;$00-ff block !byte $00 !byte $01 !byte $02 @@ -176,99 +168,10 @@ !byte $9d !byte $9e !byte $9f - !byte $a0 - !byte $a1 - !byte $a2 - !byte $a3 - !byte $a4 - !byte $a5 - !byte $a6 - !byte $a7 - !byte $a8 - !byte $a9 - !byte $aa - !byte $ab - !byte $ac - !byte $ad - !byte $ae - !byte $af - !byte $b0 - !byte $b1 - !byte $b2 - !byte $b3 - !byte $b4 - !byte $b5 - !byte $b6 - !byte $b7 - !byte $b8 - !byte $b9 - !byte $ba - !byte $bb - !byte $bc - !byte $bd - !byte $be - !byte $bf - !byte $c0 - !byte $c1 - !byte $c2 - !byte $c3 - !byte $c4 - !byte $c5 - !byte $c6 - !byte $c7 - !byte $c8 - !byte $c9 - !byte $ca - !byte $cb - !byte $cc - !byte $cd - !byte $ce - !byte $cf - !byte $d0 - !byte $d1 - !byte $d2 - !byte $d3 - !byte $d4 - !byte $d5 - !byte $d6 - !byte $d7 - !byte $d8 - !byte $d9 - !byte $da - !byte $db - !byte $dc - !byte $dd - !byte $de - !byte $df - !byte $e0 - !byte $e1 - !byte $e2 - !byte $e3 - !byte $e4 - !byte $e5 - !byte $e6 - !byte $e7 - !byte $e8 - !byte $e9 - !byte $ea - !byte $eb - !byte $ec - !byte $ed - !byte $ee - !byte $ef - !byte $f0 - !byte $f1 - !byte $f2 - !byte $f3 - !byte $f4 - !byte $f5 - !byte $f6 - !byte $f7 - !byte $f8 - !byte $f9 - !byte $fa - !byte $fb - !byte $fc - !byte $fd - !byte $fe + !hex a0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebf + !hex c0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedf + !hex e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfe !byte $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding-a_cc65.S b/SourceGen/SGTestData/Expected/20120-char-encoding-a_cc65.S similarity index 72% rename from SourceGen/SGTestData/Expected/20122-char-encoding-a_cc65.S rename to SourceGen/SGTestData/Expected/20120-char-encoding-a_cc65.S index aeb058b..d470fbc 100644 --- a/SourceGen/SGTestData/Expected/20122-char-encoding-a_cc65.S +++ b/SourceGen/SGTestData/Expected/20120-char-encoding-a_cc65.S @@ -1,12 +1,7 @@ -;Project edited to mark some non-ASCII operands as ASCII. - .setcpu "65816" +;Projected edited to format non-char operands as chars. + .setcpu "6502" ; .segment "SEG000" .org $1000 - .a8 - .i8 - clc - xce - sep #$30 lda #'A' lda #'A' | $80 lda #$c1 @@ -15,22 +10,12 @@ ldx #'a' | $80 ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - .a16 - .i16 - lda #'B' - lda #'B' | $80 - lda #$c2 - lda #$42 - sep #$30 - .a8 - .i8 - rts + jmp L144B .byte 'C' .byte 'C' | $80 @@ -86,7 +71,10 @@ .byte $60 .byte $41,$42,$43,$44,$45,$46,$47,$48,$49,$4a,$4b,$4c,$4d,$4e,$4f,$50 .byte $51,$52,$53,$54,$55,$56,$57,$58,$59,$5a - .byte "{|}~" + .byte $7b + .byte $7c + .byte $7d + .byte $7e .byte $83 .byte $20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$2a,$2b,$2c,$2d,$2e,$2f .byte $30,$31,$32,$33,$34,$35,$36,$37,$38,$39,$3a,$3b,$3c,$3d,$3e,$3f @@ -99,7 +87,10 @@ .byte $40 .byte $01,$02,$03,$04,$05,$06,$07,$08,$09,$0a,$0b,$0c,$0d,$0e,$0f,$10 .byte $11,$12,$13,$14,$15,$16,$17,$18,$19,$1a - .byte "{|}~" + .byte $7b + .byte $7c + .byte $7d + .byte $7e .byte $84 .byte $c9,$c9,$c3,$d3,$d4,$c5,$d0,$20,$45,$53,$52,$45,$56,$45,$52 .byte $84 @@ -124,6 +115,9 @@ .byte $05,$04,$0f,$43,$20,$0e,$05,$05,$12,$03,$53,$20,$05,$13,$12,$05 .byte $16,$05,$12 .byte $84 + .byte $0e,$15,$0c,$0c,$2d,$14,$05,$12,$0d,$20,$13,$03,$12,$05,$05,$0e + .byte $20,$03,$0f,$04,$05,$3f,$00 + .byte $84 .byte $17,$53,$03,$12,$05,$05,$0e,$20,$43,$0f,$04,$05,$20,$17,$09,$14 .byte $08,$20,$0c,$05,$0e,$07,$14,$08 .byte $84 @@ -133,7 +127,6 @@ .byte $53,$03,$12,$05,$05,$0e,$20,$43,$0f,$04,$05,$20,$44,$43,$c9 .byte $84 .byte $85 -;$00-ff block .byte $00 .byte $01 .byte $02 @@ -201,99 +194,13 @@ .byte $9d .byte $9e .byte $9f - .byte $a0 - .byte $a1 - .byte $a2 - .byte $a3 - .byte $a4 - .byte $a5 - .byte $a6 - .byte $a7 - .byte $a8 - .byte $a9 - .byte $aa - .byte $ab - .byte $ac - .byte $ad - .byte $ae - .byte $af - .byte $b0 - .byte $b1 - .byte $b2 - .byte $b3 - .byte $b4 - .byte $b5 - .byte $b6 - .byte $b7 - .byte $b8 - .byte $b9 - .byte $ba - .byte $bb - .byte $bc - .byte $bd - .byte $be - .byte $bf - .byte $c0 - .byte $c1 - .byte $c2 - .byte $c3 - .byte $c4 - .byte $c5 - .byte $c6 - .byte $c7 - .byte $c8 - .byte $c9 - .byte $ca - .byte $cb - .byte $cc - .byte $cd - .byte $ce - .byte $cf - .byte $d0 - .byte $d1 - .byte $d2 - .byte $d3 - .byte $d4 - .byte $d5 - .byte $d6 - .byte $d7 - .byte $d8 - .byte $d9 - .byte $da - .byte $db - .byte $dc - .byte $dd - .byte $de - .byte $df - .byte $e0 - .byte $e1 - .byte $e2 - .byte $e3 - .byte $e4 - .byte $e5 - .byte $e6 - .byte $e7 - .byte $e8 - .byte $e9 - .byte $ea - .byte $eb - .byte $ec - .byte $ed - .byte $ee - .byte $ef - .byte $f0 - .byte $f1 - .byte $f2 - .byte $f3 - .byte $f4 - .byte $f5 - .byte $f6 - .byte $f7 - .byte $f8 - .byte $f9 - .byte $fa - .byte $fb - .byte $fc - .byte $fd - .byte $fe + .byte $a0,$a1,$a2,$a3,$a4,$a5,$a6,$a7,$a8,$a9,$aa,$ab,$ac,$ad,$ae,$af + .byte $b0,$b1,$b2,$b3,$b4,$b5,$b6,$b7,$b8,$b9,$ba,$bb,$bc,$bd,$be,$bf + .byte $c0,$c1,$c2,$c3,$c4,$c5,$c6,$c7,$c8,$c9,$ca,$cb,$cc,$cd,$ce,$cf + .byte $d0,$d1,$d2,$d3,$d4,$d5,$d6,$d7,$d8,$d9,$da,$db,$dc,$dd,$de,$df + .byte $e0,$e1,$e2,$e3,$e4,$e5,$e6,$e7,$e8,$e9,$ea,$eb,$ec,$ed,$ee,$ef + .byte $f0,$f1,$f2,$f3,$f4,$f5,$f6,$f7,$f8,$f9,$fa,$fb,$fc,$fd,$fe .byte $ff + +L144B: rts + diff --git a/SourceGen/SGTestData/Expected/20120-char-encoding-a_cc65.cfg b/SourceGen/SGTestData/Expected/20120-char-encoding-a_cc65.cfg new file mode 100644 index 0000000..768c8a3 --- /dev/null +++ b/SourceGen/SGTestData/Expected/20120-char-encoding-a_cc65.cfg @@ -0,0 +1,11 @@ +# 6502bench SourceGen generated linker script for 20120-char-encoding-a +MEMORY { + MAIN: file=%O, start=%S, size=65536; +# MEM000: file=%O, start=$1000, size=1100; +} +SEGMENTS { + CODE: load=MAIN, type=rw; +# SEG000: load=MEM000, type=rw; +} +FEATURES {} +SYMBOLS {} diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding-a_merlin32.S b/SourceGen/SGTestData/Expected/20120-char-encoding-a_merlin32.S similarity index 66% rename from SourceGen/SGTestData/Expected/20122-char-encoding-a_merlin32.S rename to SourceGen/SGTestData/Expected/20120-char-encoding-a_merlin32.S index b12d2e1..98ee310 100644 --- a/SourceGen/SGTestData/Expected/20122-char-encoding-a_merlin32.S +++ b/SourceGen/SGTestData/Expected/20120-char-encoding-a_merlin32.S @@ -1,8 +1,5 @@ -;Project edited to mark some non-ASCII operands as ASCII. +;Projected edited to format non-char operands as chars. org $1000 - clc - xce - sep #$30 lda #'A' lda #"A" lda #$c1 @@ -11,20 +8,12 @@ ldx #"a" ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - mx %00 - lda #'B' - lda #"B" - lda #$c2 - lda #$42 - sep #$30 - mx %11 - rts + jmp L144B dfb 'C' dfb "C" @@ -66,7 +55,10 @@ dfb $5f dfb $60 hex 4142434445464748494a4b4c4d4e4f505152535455565758595a - asc '{|}~' + dfb $7b + dfb $7c + dfb $7d + dfb $7e dfb $83 hex 202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f hex 004142434445464748494a4b4c4d4e4f505152535455565758595a1b @@ -76,7 +68,10 @@ dfb $1f dfb $40 hex 0102030405060708090a0b0c0d0e0f101112131415161718191a - asc '{|}~' + dfb $7b + dfb $7c + dfb $7d + dfb $7e dfb $84 hex c9c9c3d3d4c5d02045535245564552 dfb $84 @@ -94,6 +89,8 @@ dfb $84 hex 05040f43200e05051203532005131205160512 dfb $84 + hex 0e150c0c2d1405120d2013031205050e20030f04053f00 + dfb $84 hex 1753031205050e20430f04052017091408200c050e071408 dfb $84 hex 180053031205050e20430f04052017091408200c050e07140832 @@ -101,7 +98,6 @@ hex 53031205050e20430f0405204443c9 dfb $84 dfb $85 -;$00-ff block dfb $00 dfb $01 dfb $02 @@ -169,99 +165,9 @@ dfb $9d dfb $9e dfb $9f - dfb $a0 - dfb $a1 - dfb $a2 - dfb $a3 - dfb $a4 - dfb $a5 - dfb $a6 - dfb $a7 - dfb $a8 - dfb $a9 - dfb $aa - dfb $ab - dfb $ac - dfb $ad - dfb $ae - dfb $af - dfb $b0 - dfb $b1 - dfb $b2 - dfb $b3 - dfb $b4 - dfb $b5 - dfb $b6 - dfb $b7 - dfb $b8 - dfb $b9 - dfb $ba - dfb $bb - dfb $bc - dfb $bd - dfb $be - dfb $bf - dfb $c0 - dfb $c1 - dfb $c2 - dfb $c3 - dfb $c4 - dfb $c5 - dfb $c6 - dfb $c7 - dfb $c8 - dfb $c9 - dfb $ca - dfb $cb - dfb $cc - dfb $cd - dfb $ce - dfb $cf - dfb $d0 - dfb $d1 - dfb $d2 - dfb $d3 - dfb $d4 - dfb $d5 - dfb $d6 - dfb $d7 - dfb $d8 - dfb $d9 - dfb $da - dfb $db - dfb $dc - dfb $dd - dfb $de - dfb $df - dfb $e0 - dfb $e1 - dfb $e2 - dfb $e3 - dfb $e4 - dfb $e5 - dfb $e6 - dfb $e7 - dfb $e8 - dfb $e9 - dfb $ea - dfb $eb - dfb $ec - dfb $ed - dfb $ee - dfb $ef - dfb $f0 - dfb $f1 - dfb $f2 - dfb $f3 - dfb $f4 - dfb $f5 - dfb $f6 - dfb $f7 - dfb $f8 - dfb $f9 - dfb $fa - dfb $fb - dfb $fc - dfb $fd - dfb $fe + asc " !",a2,"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWX" + asc "YZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~" dfb $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding_64tass.S b/SourceGen/SGTestData/Expected/20122-char-encoding_64tass.S new file mode 100644 index 0000000..b1c83c9 --- /dev/null +++ b/SourceGen/SGTestData/Expected/20122-char-encoding_64tass.S @@ -0,0 +1,24 @@ + .cpu "65816" + .enc "sg_hiascii" + .cdef $20,$7e,$a0 + .enc "sg_ascii" + .cdef $20,$7e,$20 +* = $1000 + .as + .xs + clc + xce + rep #$30 + .al + .xl + lda #'B' + lda #'B' | $80 + .enc "none" + lda #'B' + .enc "screen" + lda #'B' + sep #$30 + .as + .xs + rts + diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding_acme.S b/SourceGen/SGTestData/Expected/20122-char-encoding_acme.S new file mode 100644 index 0000000..4814f30 --- /dev/null +++ b/SourceGen/SGTestData/Expected/20122-char-encoding_acme.S @@ -0,0 +1,18 @@ + !cpu 65816 +* = $1000 + !as + !rs + clc + xce + rep #$30 + !al + !rl + lda #'B' + lda #'B' | $80 + lda #$c2 + lda #$42 + sep #$30 + !as + !rs + rts + diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding_cc65.S b/SourceGen/SGTestData/Expected/20122-char-encoding_cc65.S new file mode 100644 index 0000000..da3bea1 --- /dev/null +++ b/SourceGen/SGTestData/Expected/20122-char-encoding_cc65.S @@ -0,0 +1,19 @@ + .setcpu "65816" +; .segment "SEG000" + .org $1000 + .a8 + .i8 + clc + xce + rep #$30 + .a16 + .i16 + lda #'B' + lda #'B' | $80 + lda #$c2 + lda #$42 + sep #$30 + .a8 + .i8 + rts + diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding-a_cc65.cfg b/SourceGen/SGTestData/Expected/20122-char-encoding_cc65.cfg similarity index 80% rename from SourceGen/SGTestData/Expected/20122-char-encoding-a_cc65.cfg rename to SourceGen/SGTestData/Expected/20122-char-encoding_cc65.cfg index 990b1eb..9e7a7cf 100644 --- a/SourceGen/SGTestData/Expected/20122-char-encoding-a_cc65.cfg +++ b/SourceGen/SGTestData/Expected/20122-char-encoding_cc65.cfg @@ -1,7 +1,7 @@ -# 6502bench SourceGen generated linker script for 20122-char-encoding-a +# 6502bench SourceGen generated linker script for 20122-char-encoding MEMORY { MAIN: file=%O, start=%S, size=65536; -# MEM000: file=%O, start=$1000, size=1093; +# MEM000: file=%O, start=$1000, size=19; } SEGMENTS { CODE: load=MAIN, type=rw; diff --git a/SourceGen/SGTestData/Expected/20122-char-encoding_merlin32.S b/SourceGen/SGTestData/Expected/20122-char-encoding_merlin32.S new file mode 100644 index 0000000..f502d77 --- /dev/null +++ b/SourceGen/SGTestData/Expected/20122-char-encoding_merlin32.S @@ -0,0 +1,13 @@ + org $1000 + clc + xce + rep #$30 + mx %00 + lda #'B' + lda #"B" + lda #$c2 + lda #$42 + sep #$30 + mx %11 + rts + diff --git a/SourceGen/SGTestData/Expected/20132-char-encoding-p_64tass.S b/SourceGen/SGTestData/Expected/20130-char-encoding-p_64tass.S similarity index 93% rename from SourceGen/SGTestData/Expected/20132-char-encoding-p_64tass.S rename to SourceGen/SGTestData/Expected/20130-char-encoding-p_64tass.S index a43e5e5..43ffa27 100644 --- a/SourceGen/SGTestData/Expected/20132-char-encoding-p_64tass.S +++ b/SourceGen/SGTestData/Expected/20130-char-encoding-p_64tass.S @@ -1,15 +1,10 @@ -;Project edited to mark some non-ASCII operands as ASCII. - .cpu "65816" +;Projected edited to format non-char operands as chars. + .cpu "6502" .enc "sg_hiascii" .cdef $20,$7e,$a0 .enc "sg_ascii" .cdef $20,$7e,$20 * = $1000 - .as - .xs - clc - xce - sep #$30 lda #'A' lda #'A' | $80 .enc "none" @@ -24,7 +19,7 @@ .enc "screen" ldx #'a' .enc "sg_ascii" - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f .enc "none" lda #$7f @@ -32,21 +27,8 @@ lda #$7f .enc "sg_ascii" lda #$0d - rep #$30 - .al - .xl - lda #'B' - lda #'B' | $80 - .enc "none" - lda #'B' - .enc "screen" - lda #'B' - sep #$30 - .as - .xs - rts + jmp L144B - .enc "sg_ascii" .byte 'C' .byte 'C' | $80 .enc "none" @@ -138,6 +120,8 @@ .enc "screen" .text "edoC neercS esrever" .byte $84 + .text "null-term screen code?@" + .byte $84 .ptext "Screen Code with length" .byte $84 .text $18,$00,"Screen Code with length2" @@ -145,7 +129,6 @@ .shift "Screen Code DCI" .byte $84 .byte $85 -;$00-ff block .byte $00 .byte $01 .byte $02 @@ -311,3 +294,6 @@ .byte $fd .byte $fe .byte $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20132-char-encoding-p_acme.S b/SourceGen/SGTestData/Expected/20130-char-encoding-p_acme.S similarity index 94% rename from SourceGen/SGTestData/Expected/20132-char-encoding-p_acme.S rename to SourceGen/SGTestData/Expected/20130-char-encoding-p_acme.S index ed805ec..f0e3a4c 100644 --- a/SourceGen/SGTestData/Expected/20132-char-encoding-p_acme.S +++ b/SourceGen/SGTestData/Expected/20130-char-encoding-p_acme.S @@ -1,11 +1,6 @@ -;Project edited to mark some non-ASCII operands as ASCII. - !cpu 65816 +;Projected edited to format non-char operands as chars. + !cpu 6502 * = $1000 - !as - !rs - clc - xce - sep #$30 lda #'A' lda #'A' | $80 lda #$c1 @@ -14,22 +9,12 @@ ldx #'a' | $80 ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - !al - !rl - lda #'B' - lda #'B' | $80 - lda #$c2 - lda #$42 - sep #$30 - !as - !rs - rts + jmp L144B !byte 'C' !byte 'C' | $80 @@ -107,6 +92,8 @@ !byte $84 !scr "edoC neercS esrever" !byte $84 + !scr "null-term screen code?@" + !byte $84 !scr $17,"Screen Code with length" !byte $84 !scr $18,$00,"Screen Code with length2" @@ -114,7 +101,6 @@ !scr "Screen Code DC",$c9 !byte $84 !byte $85 -;$00-ff block !byte $00 !byte $01 !byte $02 @@ -279,3 +265,6 @@ !byte $fd !byte $fe !byte $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20132-char-encoding-p_cc65.S b/SourceGen/SGTestData/Expected/20130-char-encoding-p_cc65.S similarity index 95% rename from SourceGen/SGTestData/Expected/20132-char-encoding-p_cc65.S rename to SourceGen/SGTestData/Expected/20130-char-encoding-p_cc65.S index 96aadf6..aed1cb8 100644 --- a/SourceGen/SGTestData/Expected/20132-char-encoding-p_cc65.S +++ b/SourceGen/SGTestData/Expected/20130-char-encoding-p_cc65.S @@ -1,12 +1,7 @@ -;Project edited to mark some non-ASCII operands as ASCII. - .setcpu "65816" +;Projected edited to format non-char operands as chars. + .setcpu "6502" ; .segment "SEG000" .org $1000 - .a8 - .i8 - clc - xce - sep #$30 lda #'A' lda #'A' | $80 lda #$c1 @@ -15,22 +10,12 @@ ldx #'a' | $80 ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - .a16 - .i16 - lda #'B' - lda #'B' | $80 - lda #$c2 - lda #$42 - sep #$30 - .a8 - .i8 - rts + jmp L144B .byte 'C' .byte 'C' | $80 @@ -130,6 +115,9 @@ .byte $05,$04,$0f,$43,$20,$0e,$05,$05,$12,$03,$53,$20,$05,$13,$12,$05 .byte $16,$05,$12 .byte $84 + .byte $0e,$15,$0c,$0c,$2d,$14,$05,$12,$0d,$20,$13,$03,$12,$05,$05,$0e + .byte $20,$03,$0f,$04,$05,$3f,$00 + .byte $84 .byte $17,$53,$03,$12,$05,$05,$0e,$20,$43,$0f,$04,$05,$20,$17,$09,$14 .byte $08,$20,$0c,$05,$0e,$07,$14,$08 .byte $84 @@ -139,7 +127,6 @@ .byte $53,$03,$12,$05,$05,$0e,$20,$43,$0f,$04,$05,$20,$44,$43,$c9 .byte $84 .byte $85 -;$00-ff block .byte $00 .byte $01 .byte $02 @@ -307,3 +294,6 @@ .byte $fd .byte $fe .byte $ff + +L144B: rts + diff --git a/SourceGen/SGTestData/Expected/20132-char-encoding-p_cc65.cfg b/SourceGen/SGTestData/Expected/20130-char-encoding-p_cc65.cfg similarity index 59% rename from SourceGen/SGTestData/Expected/20132-char-encoding-p_cc65.cfg rename to SourceGen/SGTestData/Expected/20130-char-encoding-p_cc65.cfg index 62469c2..97c75eb 100644 --- a/SourceGen/SGTestData/Expected/20132-char-encoding-p_cc65.cfg +++ b/SourceGen/SGTestData/Expected/20130-char-encoding-p_cc65.cfg @@ -1,7 +1,7 @@ -# 6502bench SourceGen generated linker script for 20132-char-encoding-p +# 6502bench SourceGen generated linker script for 20130-char-encoding-p MEMORY { MAIN: file=%O, start=%S, size=65536; -# MEM000: file=%O, start=$1000, size=1093; +# MEM000: file=%O, start=$1000, size=1100; } SEGMENTS { CODE: load=MAIN, type=rw; diff --git a/SourceGen/SGTestData/Expected/20132-char-encoding-p_merlin32.S b/SourceGen/SGTestData/Expected/20130-char-encoding-p_merlin32.S similarity index 95% rename from SourceGen/SGTestData/Expected/20132-char-encoding-p_merlin32.S rename to SourceGen/SGTestData/Expected/20130-char-encoding-p_merlin32.S index 22ee413..ec3ba71 100644 --- a/SourceGen/SGTestData/Expected/20132-char-encoding-p_merlin32.S +++ b/SourceGen/SGTestData/Expected/20130-char-encoding-p_merlin32.S @@ -1,8 +1,5 @@ -;Project edited to mark some non-ASCII operands as ASCII. +;Projected edited to format non-char operands as chars. org $1000 - clc - xce - sep #$30 lda #'A' lda #"A" lda #$c1 @@ -11,20 +8,12 @@ ldx #"a" ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - mx %00 - lda #'B' - lda #"B" - lda #$c2 - lda #$42 - sep #$30 - mx %11 - rts + jmp L144B dfb 'C' dfb "C" @@ -100,6 +89,8 @@ dfb $84 hex 05040f43200e05051203532005131205160512 dfb $84 + hex 0e150c0c2d1405120d2013031205050e20030f04053f00 + dfb $84 hex 1753031205050e20430f04052017091408200c050e071408 dfb $84 hex 180053031205050e20430f04052017091408200c050e07140832 @@ -107,7 +98,6 @@ hex 53031205050e20430f0405204443c9 dfb $84 dfb $85 -;$00-ff block dfb $00 dfb $01 dfb $02 @@ -272,3 +262,6 @@ dfb $fd dfb $fe dfb $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20142-char-encoding-s_64tass.S b/SourceGen/SGTestData/Expected/20140-char-encoding-s_64tass.S similarity index 93% rename from SourceGen/SGTestData/Expected/20142-char-encoding-s_64tass.S rename to SourceGen/SGTestData/Expected/20140-char-encoding-s_64tass.S index fbf33fa..c51c13d 100644 --- a/SourceGen/SGTestData/Expected/20142-char-encoding-s_64tass.S +++ b/SourceGen/SGTestData/Expected/20140-char-encoding-s_64tass.S @@ -1,15 +1,10 @@ -;Project edited to mark some non-ASCII operands as ASCII. - .cpu "65816" +;Projected edited to format non-char operands as chars. + .cpu "6502" .enc "sg_hiascii" .cdef $20,$7e,$a0 .enc "sg_ascii" .cdef $20,$7e,$20 * = $1000 - .as - .xs - clc - xce - sep #$30 lda #'A' lda #'A' | $80 .enc "none" @@ -24,7 +19,7 @@ .enc "screen" ldx #'a' .enc "sg_ascii" - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f .enc "none" lda #$7f @@ -32,21 +27,8 @@ lda #$7f .enc "sg_ascii" lda #$0d - rep #$30 - .al - .xl - lda #'B' - lda #'B' | $80 - .enc "none" - lda #'B' - .enc "screen" - lda #'B' - sep #$30 - .as - .xs - rts + jmp L144B - .enc "sg_ascii" .byte 'C' .byte 'C' | $80 .enc "none" @@ -138,6 +120,8 @@ .enc "screen" .text "edoC neercS esrever" .byte $84 + .text "null-term screen code?@" + .byte $84 .ptext "Screen Code with length" .byte $84 .text $18,$00,"Screen Code with length2" @@ -145,7 +129,6 @@ .shift "Screen Code DCI" .byte $84 .byte $85 -;$00-ff block .text "@abcdefghijklmnopqrstuvwxyz[" .byte $1c .byte $1d @@ -319,3 +302,6 @@ .byte $fd .byte $fe .byte $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20142-char-encoding-s_acme.S b/SourceGen/SGTestData/Expected/20140-char-encoding-s_acme.S similarity index 94% rename from SourceGen/SGTestData/Expected/20142-char-encoding-s_acme.S rename to SourceGen/SGTestData/Expected/20140-char-encoding-s_acme.S index be4bf49..134ffde 100644 --- a/SourceGen/SGTestData/Expected/20142-char-encoding-s_acme.S +++ b/SourceGen/SGTestData/Expected/20140-char-encoding-s_acme.S @@ -1,11 +1,6 @@ -;Project edited to mark some non-ASCII operands as ASCII. - !cpu 65816 +;Projected edited to format non-char operands as chars. + !cpu 6502 * = $1000 - !as - !rs - clc - xce - sep #$30 lda #'A' lda #'A' | $80 lda #$c1 @@ -14,22 +9,12 @@ ldx #'a' | $80 ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - !al - !rl - lda #'B' - lda #'B' | $80 - lda #$c2 - lda #$42 - sep #$30 - !as - !rs - rts + jmp L144B !byte 'C' !byte 'C' | $80 @@ -107,6 +92,8 @@ !byte $84 !scr "edoC neercS esrever" !byte $84 + !scr "null-term screen code?@" + !byte $84 !scr $17,"Screen Code with length" !byte $84 !scr $18,$00,"Screen Code with length2" @@ -114,7 +101,6 @@ !scr "Screen Code DC",$c9 !byte $84 !byte $85 -;$00-ff block !scr "@abcdefghijklmnopqrstuvwxyz[" !byte $1c !byte $1d @@ -288,3 +274,6 @@ !byte $fd !byte $fe !byte $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Expected/20142-char-encoding-s_cc65.S b/SourceGen/SGTestData/Expected/20140-char-encoding-s_cc65.S similarity index 95% rename from SourceGen/SGTestData/Expected/20142-char-encoding-s_cc65.S rename to SourceGen/SGTestData/Expected/20140-char-encoding-s_cc65.S index 0e70dd9..7d330ea 100644 --- a/SourceGen/SGTestData/Expected/20142-char-encoding-s_cc65.S +++ b/SourceGen/SGTestData/Expected/20140-char-encoding-s_cc65.S @@ -1,12 +1,7 @@ -;Project edited to mark some non-ASCII operands as ASCII. - .setcpu "65816" +;Projected edited to format non-char operands as chars. + .setcpu "6502" ; .segment "SEG000" .org $1000 - .a8 - .i8 - clc - xce - sep #$30 lda #'A' lda #'A' | $80 lda #$c1 @@ -15,22 +10,12 @@ ldx #'a' | $80 ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - .a16 - .i16 - lda #'B' - lda #'B' | $80 - lda #$c2 - lda #$42 - sep #$30 - .a8 - .i8 - rts + jmp L144B .byte 'C' .byte 'C' | $80 @@ -130,6 +115,9 @@ .byte $05,$04,$0f,$43,$20,$0e,$05,$05,$12,$03,$53,$20,$05,$13,$12,$05 .byte $16,$05,$12 .byte $84 + .byte $0e,$15,$0c,$0c,$2d,$14,$05,$12,$0d,$20,$13,$03,$12,$05,$05,$0e + .byte $20,$03,$0f,$04,$05,$3f,$00 + .byte $84 .byte $17,$53,$03,$12,$05,$05,$0e,$20,$43,$0f,$04,$05,$20,$17,$09,$14 .byte $08,$20,$0c,$05,$0e,$07,$14,$08 .byte $84 @@ -139,7 +127,6 @@ .byte $53,$03,$12,$05,$05,$0e,$20,$43,$0f,$04,$05,$20,$44,$43,$c9 .byte $84 .byte $85 -;$00-ff block .byte $00,$01,$02,$03,$04,$05,$06,$07,$08,$09,$0a,$0b,$0c,$0d,$0e,$0f .byte $10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$1a,$1b .byte $1c @@ -316,3 +303,6 @@ .byte $fd .byte $fe .byte $ff + +L144B: rts + diff --git a/SourceGen/SGTestData/Expected/20142-char-encoding-s_cc65.cfg b/SourceGen/SGTestData/Expected/20140-char-encoding-s_cc65.cfg similarity index 59% rename from SourceGen/SGTestData/Expected/20142-char-encoding-s_cc65.cfg rename to SourceGen/SGTestData/Expected/20140-char-encoding-s_cc65.cfg index 7af42a9..c9c7843 100644 --- a/SourceGen/SGTestData/Expected/20142-char-encoding-s_cc65.cfg +++ b/SourceGen/SGTestData/Expected/20140-char-encoding-s_cc65.cfg @@ -1,7 +1,7 @@ -# 6502bench SourceGen generated linker script for 20142-char-encoding-s +# 6502bench SourceGen generated linker script for 20140-char-encoding-s MEMORY { MAIN: file=%O, start=%S, size=65536; -# MEM000: file=%O, start=$1000, size=1093; +# MEM000: file=%O, start=$1000, size=1100; } SEGMENTS { CODE: load=MAIN, type=rw; diff --git a/SourceGen/SGTestData/Expected/20142-char-encoding-s_merlin32.S b/SourceGen/SGTestData/Expected/20140-char-encoding-s_merlin32.S similarity index 95% rename from SourceGen/SGTestData/Expected/20142-char-encoding-s_merlin32.S rename to SourceGen/SGTestData/Expected/20140-char-encoding-s_merlin32.S index 1796cc0..422d311 100644 --- a/SourceGen/SGTestData/Expected/20142-char-encoding-s_merlin32.S +++ b/SourceGen/SGTestData/Expected/20140-char-encoding-s_merlin32.S @@ -1,8 +1,5 @@ -;Project edited to mark some non-ASCII operands as ASCII. +;Projected edited to format non-char operands as chars. org $1000 - clc - xce - sep #$30 lda #'A' lda #"A" lda #$c1 @@ -11,20 +8,12 @@ ldx #"a" ldx #$41 ldx #$01 - lda #$7f + lda #$7f ;inappropriate format should be ignored lda #$7f lda #$7f lda #$7f lda #$0d - rep #$30 - mx %00 - lda #'B' - lda #"B" - lda #$c2 - lda #$42 - sep #$30 - mx %11 - rts + jmp L144B dfb 'C' dfb "C" @@ -100,6 +89,8 @@ dfb $84 hex 05040f43200e05051203532005131205160512 dfb $84 + hex 0e150c0c2d1405120d2013031205050e20030f04053f00 + dfb $84 hex 1753031205050e20430f04052017091408200c050e071408 dfb $84 hex 180053031205050e20430f04052017091408200c050e07140832 @@ -107,7 +98,6 @@ hex 53031205050e20430f0405204443c9 dfb $84 dfb $85 -;$00-ff block hex 000102030405060708090a0b0c0d0e0f101112131415161718191a1b dfb $1c dfb $1d @@ -281,3 +271,6 @@ dfb $fd dfb $fe dfb $ff + +L144B rts + diff --git a/SourceGen/SGTestData/Source/20120-char-encoding.S b/SourceGen/SGTestData/Source/20120-char-encoding.S new file mode 100644 index 0000000..96765f3 --- /dev/null +++ b/SourceGen/SGTestData/Source/20120-char-encoding.S @@ -0,0 +1,148 @@ +; Copyright 2019 faddenSoft. All Rights Reserved. +; See the LICENSE.txt file for distribution terms (Apache 2.0). +; +; Assembler: ACME (has good PETSCII/screen code support) +; 6502 version +; +; This becomes multiple tests that differ only in how the default +; character set is configured in project properties. Generate one +; project file, copy it on top of the others, change the property. +; All binaries are the same. + + !cpu 6502 +* = $1000 + +; Single-byte operand + lda #'A' ;format as low ASCII + lda #'A' | $80 ;format as high ASCII + lda #'A' | $80 ;format as PETSCII + lda #'A' ;format as screen code + + ldx #'a' ;format as low ASCII + ldx #'a' | $80 ;format as high ASCII + ldx #'a' - $20 ;format as PETSCII + ldx #$01 ;format as screen code + + lda #$7f ;EDIT proj: force to low ASCII + lda #$7f ;EDIT proj: force to high ASCII + lda #$7f ;EDIT proj: force to PETSCII + lda #$7f ;EDIT proj: force to screen code + + lda #$0d ;verify instr operand editor only allows C64SC + + jmp end + +; Single-byte data items + !byte 'C' ;format as above + !byte 'C' | $80 + !byte 'C' | $80 + !byte 'C' + +; Double-byte data items + !byte 'd', 0 ;format as above + !byte 'd' | $80, 0 + !byte 'd' - $20, 0 + !byte $04, 0 + +; Double-byte big-endian data items + !byte 0, 'E' ;format as above + !byte 0, 'E' | $80 + !byte 0, 'E' | $80 + !byte 0, 'E' + +; Start with the basics. Apply appropriate formatting. + !byte $80 + !text "low ASCII str" +; !byte $80 ; let them run together to test scan / dialog behavior + !xor $80 { + !text "high ASCII str" + } + !byte $80 + !pet "PETSCII str" + !byte $80 + !scr "Screen Code str" + +; Get a bit fancy. + !byte $82 + !text $07,"Low ASCII CRLF",$0d,$0a + !byte $82 + !xor $80 { + !text $07,"High ASCII CRLF",$0d,$0a + } + !byte $82 + !pet $93,"PETSCII with ",$96,"control",$05," codes",$0d + ; no control chars in screen code + +; Test the ASCII $20-7e range. + !byte $83 + !text " !",$22,"#$%&'()*+,-./0123456789:;<=>?" + !text "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" + !text "`abcdefghijklmnopqrstuvwxyz{|}~" + !byte $83 + !xor $80 { + !text " !",$22,"#$%&'()*+,-./0123456789:;<=>?" + !text "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" + !text "`abcdefghijklmnopqrstuvwxyz{|}~" + } + !byte $83 + !pet " !",$22,"#$%&'()*+,-./0123456789:;<=>?" + !pet "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" + !pet "`abcdefghijklmnopqrstuvwxyz{|}~" + !byte $83 + !scr " !",$22,"#$%&'()*+,-./0123456789:;<=>?" + !scr "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" + !scr "`abcdefghijklmnopqrstuvwxyz{|}~" + +; The 20010-string-types test exercises low/high ASCII strings, so no need +; to do that here. Do a quick test with C64 characters. Note Screen Code +; can't be null-terminated without giving up '@', but we include it here +; anyway for completeness. + !byte $84 + !pet "IICSTEP esrever" ;format as StringReverse + !byte $84 + !pet "null term PETSCII",0 ;format as StringNullTerm + !byte $84 + !pet "This null-terminated string is too long to fit on a single line, and will be split.",0 + !byte $84 + !pet 19,"PETSCII with length" ;format as StringL8 + !byte $84 + !pet 20,0,"PETSCII with length2" ;format as StringL16 + !byte $84 + !pet "pet dcI" ;format as StringDCI + + !byte $84 + !scr "edoC neercS esrever" ;format as StringReverse + !byte $84 + !scr "null-term screen code?",0 ;format as String + !byte $84 + !scr 23,"Screen Code with length" ;format as StringL8 + !byte $84 + !scr 24,0,"Screen Code with length2" ;format as StringL16 + !byte $84 + !scr "Screen Code DC",$c9 ;format as StringDCI + !byte $84 + + !byte $85 + +; All bytes, from 00-ff. Handy for seeing what the auto-scanner picks up +; based on the default character encoding. DO NOT format this section. +allbytes + !hex 000102030405060708090a0b0c0d0e0f + !hex 101112131415161718191a1b1c1d1e1f + !hex 202122232425262728292a2b2c2d2e2f + !hex 303132333435363738393a3b3c3d3e3f + !hex 404142434445464748494a4b4c4d4e4f + !hex 505152535455565758595a5b5c5d5e5f + !hex 606162636465666768696a6b6c6d6e6f + !hex 707172737475767778797a7b7c7d7e7f + !hex 808182838485868788898a8b8c8d8e8f + !hex 909192939495969798999a9b9c9d9e9f + !hex a0a1a2a3a4a5a6a7a8a9aaabacadaeaf + !hex b0b1b2b3b4b5b6b7b8b9babbbcbdbebf + !hex c0c1c2c3c4c5c6c7c8c9cacbcccdcecf + !hex d0d1d2d3d4d5d6d7d8d9dadbdcdddedf + !hex e0e1e2e3e4e5e6e7e8e9eaebecedeeef + !hex f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff + +end + rts diff --git a/SourceGen/SGTestData/Source/20122-char-encoding.S b/SourceGen/SGTestData/Source/20122-char-encoding.S index dccdb91..6ae9f4a 100644 --- a/SourceGen/SGTestData/Source/20122-char-encoding.S +++ b/SourceGen/SGTestData/Source/20122-char-encoding.S @@ -1,153 +1,26 @@ ; Copyright 2019 faddenSoft. All Rights Reserved. ; See the LICENSE.txt file for distribution terms (Apache 2.0). ; -; Assembler: ACME (for the PETSCII/screen code support) +; Assembler: ACME (has good PETSCII/screen code support) +; 65816 version !cpu 65816 * = $1000 clc xce - sep #$30 - !as - !rs - -; Single-byte operand - lda #'A' ;format as low ASCII - lda #'A' | $80 ;format as high ASCII - lda #'A' | $80 ;format as PETSCII - lda #'A' ;format as screen code - - ldx #'a' ;format as low ASCII - ldx #'a' | $80 ;format as high ASCII - ldx #'a' - $20 ;format as PETSCII - ldx #$01 ;format as screen code - - lda #$7f ;EDIT: force to low ASCII - lda #$7f ;EDIT: force to high ASCII - lda #$7f ;EDIT: force to PETSCII - lda #$7f ;EDIT: force to screen code - - lda #$0d ;verify the instruction operand editor only allows C64SC ; Single letter in a 16-bit immediate rep #$30 !al !rl - lda #'B' - lda #'B' | $80 - lda #'B' | $80 - lda #'B' + lda #'B' ;format as low ASCII + lda #'B' | $80 ;format as high ASCII + lda #'B' | $80 ;format as PETSCII + lda #'B' ;format as screen code sep #$30 !as !rs + rts - -; Single-byte data items - !byte 'C' - !byte 'C' | $80 - !byte 'C' | $80 - !byte 'C' - -; Double-byte data items - !byte 'd', 0 - !byte 'd' | $80, 0 - !byte 'd' - $20, 0 - !byte $04, 0 - -; Double-byte big-endian data items - !byte 0, 'E' - !byte 0, 'E' | $80 - !byte 0, 'E' | $80 - !byte 0, 'E' - -; Start with the basics - !byte $80 - !text "low ASCII str" -; !byte $80 ; let them run together to test scan / dialog behavior - !xor $80 { - !text "high ASCII str" - } - !byte $80 - !pet "PETSCII str" - !byte $80 - !scr "Screen Code str" - -; Get a bit fancy - !byte $82 - !text $07,"Low ASCII CRLF",$0d,$0a - !byte $82 - !xor $80 { - !text $07,"High ASCII CRLF",$0d,$0a - } - !byte $82 - !pet $93,"PETSCII with ",$96,"control",$05," codes",$0d - ; no control chars in screen code - -; Test the ASCII $20-7e range. - !byte $83 - !text " !",$22,"#$%&'()*+,-./0123456789:;<=>?" - !text "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" - !text "`abcdefghijklmnopqrstuvwxyz{|}~" - !byte $83 - !xor $80 { - !text " !",$22,"#$%&'()*+,-./0123456789:;<=>?" - !text "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" - !text "`abcdefghijklmnopqrstuvwxyz{|}~" - } - !byte $83 - !pet " !",$22,"#$%&'()*+,-./0123456789:;<=>?" - !pet "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" - !pet "`abcdefghijklmnopqrstuvwxyz{|}~" - !byte $83 - !scr " !",$22,"#$%&'()*+,-./0123456789:;<=>?" - !scr "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" - !scr "`abcdefghijklmnopqrstuvwxyz{|}~" - -; The 2005 test exercises low/high ASCII strings, so no need to do that here. -; Do a quick test with C64 characters. Note Screen Code can't be null-terminated -; by definition. - !byte $84 - !pet "IICSTEP esrever" ;format as StringReverse - !byte $84 - !pet "null term PETSCII",0 ;format as StringNullTerm - !byte $84 - !pet "This null-terminated string is too long to fit on a single line, and will be split.",0 - !byte $84 - !pet 19,"PETSCII with length" ;format as StringL8 - !byte $84 - !pet 20,0,"PETSCII with length2" ;format as StringL16 - !byte $84 - !pet "pet dcI" ;format as StringDCI - - !byte $84 - !scr "edoC neercS esrever" ;format as StringReverse - !byte $84 - !scr 23,"Screen Code with length" ;format as StringL8 - !byte $84 - !scr 24,0,"Screen Code with length2" ;format as StringL16 - !byte $84 - !scr "Screen Code DC",$c9 ;format as StringDCI - !byte $84 - - !byte $85 - -; All bytes, from 00-ff. Handy for seeing what the auto-scanner picks up. -allbytes - !hex 000102030405060708090a0b0c0d0e0f - !hex 101112131415161718191a1b1c1d1e1f - !hex 202122232425262728292a2b2c2d2e2f - !hex 303132333435363738393a3b3c3d3e3f - !hex 404142434445464748494a4b4c4d4e4f - !hex 505152535455565758595a5b5c5d5e5f - !hex 606162636465666768696a6b6c6d6e6f - !hex 707172737475767778797a7b7c7d7e7f - !hex 808182838485868788898a8b8c8d8e8f - !hex 909192939495969798999a9b9c9d9e9f - !hex a0a1a2a3a4a5a6a7a8a9aaabacadaeaf - !hex b0b1b2b3b4b5b6b7b8b9babbbcbdbebf - !hex c0c1c2c3c4c5c6c7c8c9cacbcccdcecf - !hex d0d1d2d3d4d5d6d7d8d9dadbdcdddedf - !hex e0e1e2e3e4e5e6e7e8e9eaebecedeeef - !hex f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff