mirror of
https://github.com/fadden/6502bench.git
synced 2025-02-20 06:29:04 +00:00
Regression test rework, part 3
Add a 6502-only version of the 20032-labels-and-symbols test. The 65816 version could get away with just the 65816-specific stuff, but there's no real need to modify it. (The next time I update it I may remove the duplicate label since that requires hand-editing.)
This commit is contained in:
parent
225ab9e132
commit
d0d387b973
BIN
SourceGen/SGTestData/20030-labels-and-symbols
Normal file
BIN
SourceGen/SGTestData/20030-labels-and-symbols
Normal file
Binary file not shown.
613
SourceGen/SGTestData/20030-labels-and-symbols.dis65
Normal file
613
SourceGen/SGTestData/20030-labels-and-symbols.dis65
Normal file
@ -0,0 +1,613 @@
|
|||||||
|
### 6502bench SourceGen dis65 v1.0 ###
|
||||||
|
{
|
||||||
|
"_ContentVersion":3,
|
||||||
|
"FileDataLength":452,
|
||||||
|
"FileDataCrc32":-1349239236,
|
||||||
|
"ProjectProps":{
|
||||||
|
"CpuName":"6502",
|
||||||
|
"IncludeUndocumentedInstr":false,
|
||||||
|
"TwoByteBrk":false,
|
||||||
|
"EntryFlags":32702671,
|
||||||
|
"AutoLabelStyle":"Simple",
|
||||||
|
"AnalysisParams":{
|
||||||
|
"AnalyzeUncategorizedData":true,
|
||||||
|
"DefaultTextScanMode":"LowHighAscii",
|
||||||
|
"MinCharsForString":4,
|
||||||
|
"SeekNearbyTargets":true,
|
||||||
|
"SmartPlpHandling":true},
|
||||||
|
|
||||||
|
"PlatformSymbolFileIdentifiers":["PROJ:20030-labels-and-symbols.sym65",
|
||||||
|
"RT:TestData/TestSyms.sym65"],
|
||||||
|
"ExtensionScriptFileIdentifiers":[],
|
||||||
|
"ProjectSyms":{
|
||||||
|
"BMI":{
|
||||||
|
"DataDescriptor":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Hex",
|
||||||
|
"SymbolRef":null},
|
||||||
|
|
||||||
|
"Comment":"opcode mnemonic",
|
||||||
|
"HasWidth":false,
|
||||||
|
"Direction":"ReadWrite",
|
||||||
|
"MultiMask":null,
|
||||||
|
"Label":"BMI",
|
||||||
|
"Value":48,
|
||||||
|
"Source":"Project",
|
||||||
|
"Type":"Constant",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"nextchunk":{
|
||||||
|
"DataDescriptor":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Decimal",
|
||||||
|
"SymbolRef":null},
|
||||||
|
|
||||||
|
"Comment":"should be replaced by user label",
|
||||||
|
"HasWidth":false,
|
||||||
|
"Direction":"ReadWrite",
|
||||||
|
"MultiMask":null,
|
||||||
|
"Label":"nextchunk",
|
||||||
|
"Value":50,
|
||||||
|
"Source":"Project",
|
||||||
|
"Type":"ExternalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"projalsa":{
|
||||||
|
"DataDescriptor":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Hex",
|
||||||
|
"SymbolRef":null},
|
||||||
|
|
||||||
|
"Comment":"same val as projalso",
|
||||||
|
"HasWidth":false,
|
||||||
|
"Direction":"ReadWrite",
|
||||||
|
"MultiMask":null,
|
||||||
|
"Label":"projalsa",
|
||||||
|
"Value":12800,
|
||||||
|
"Source":"Project",
|
||||||
|
"Type":"ExternalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"projalsz":{
|
||||||
|
"DataDescriptor":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Hex",
|
||||||
|
"SymbolRef":null},
|
||||||
|
|
||||||
|
"Comment":"same val as projalso",
|
||||||
|
"HasWidth":false,
|
||||||
|
"Direction":"ReadWrite",
|
||||||
|
"MultiMask":null,
|
||||||
|
"Label":"projalsz",
|
||||||
|
"Value":12800,
|
||||||
|
"Source":"Project",
|
||||||
|
"Type":"ExternalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"projover":{
|
||||||
|
"DataDescriptor":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Hex",
|
||||||
|
"SymbolRef":null},
|
||||||
|
|
||||||
|
"Comment":"replaces platform symbol",
|
||||||
|
"HasWidth":false,
|
||||||
|
"Direction":"ReadWrite",
|
||||||
|
"MultiMask":null,
|
||||||
|
"Label":"projover",
|
||||||
|
"Value":16384,
|
||||||
|
"Source":"Project",
|
||||||
|
"Type":"ExternalAddr",
|
||||||
|
"LabelAnno":"None"}}},
|
||||||
|
|
||||||
|
"AddressMap":[{
|
||||||
|
"Offset":0,
|
||||||
|
"Addr":9029},
|
||||||
|
|
||||||
|
{
|
||||||
|
"Offset":97,
|
||||||
|
"Addr":4096}],
|
||||||
|
"TypeHints":[{
|
||||||
|
"Low":0,
|
||||||
|
"High":0,
|
||||||
|
"Hint":"Code"}],
|
||||||
|
"StatusFlagOverrides":{
|
||||||
|
},
|
||||||
|
|
||||||
|
"Comments":{
|
||||||
|
"169":"bulky",
|
||||||
|
"281":"stringy"},
|
||||||
|
|
||||||
|
"LongComments":{
|
||||||
|
"-2147483647":{
|
||||||
|
"Text":"Project was edited to add a label in the middle of a dense hex region, and add a duplicate label.",
|
||||||
|
"BoxMode":false,
|
||||||
|
"MaxWidth":80,
|
||||||
|
"BackgroundColor":0}},
|
||||||
|
|
||||||
|
"Notes":{
|
||||||
|
},
|
||||||
|
|
||||||
|
"UserLabels":{
|
||||||
|
"0":{
|
||||||
|
"Label":"start",
|
||||||
|
"Value":9029,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"GlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"98":{
|
||||||
|
"Label":"L1000",
|
||||||
|
"Value":4097,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"LocalOrGlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"99":{
|
||||||
|
"Label":"L1000_0",
|
||||||
|
"Value":4098,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"LocalOrGlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"100":{
|
||||||
|
"Label":"l1000",
|
||||||
|
"Value":4099,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"LocalOrGlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"145":{
|
||||||
|
"Label":"calls",
|
||||||
|
"Value":4144,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"GlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"148":{
|
||||||
|
"Label":"calls",
|
||||||
|
"Value":4144,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"GlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"149":{
|
||||||
|
"Label":"badmid",
|
||||||
|
"Value":4144,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"GlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"179":{
|
||||||
|
"Label":"badmidi",
|
||||||
|
"Value":4144,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"GlobalAddr",
|
||||||
|
"LabelAnno":"None"},
|
||||||
|
|
||||||
|
"116":{
|
||||||
|
"Label":"targ",
|
||||||
|
"Value":4115,
|
||||||
|
"Source":"User",
|
||||||
|
"Type":"GlobalAddr",
|
||||||
|
"LabelAnno":"None"}},
|
||||||
|
|
||||||
|
"OperandFormats":{
|
||||||
|
"0":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"2":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"4":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"6":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"8":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"10":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"12":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"14":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"16":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"18":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"20":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"22":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"24":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"26":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"28":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"31":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"34":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"37":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"40":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"46":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"47":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"48":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"49":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"50":{
|
||||||
|
"Length":1,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"51":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"53":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"55":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"57":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"59":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absl",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"61":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"63":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"65":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"67":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"69":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"71":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"73":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"75":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"77":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericBE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"79":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"zip",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"82":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"85":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"absh",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"88":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"91":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"start",
|
||||||
|
"Part":"High"}},
|
||||||
|
|
||||||
|
"118":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"targ",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"124":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"targ",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"127":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"targ",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"133":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"targ",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"136":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"targ",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"142":{
|
||||||
|
"Length":3,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"targ",
|
||||||
|
"Part":"Low"}},
|
||||||
|
|
||||||
|
"169":{
|
||||||
|
"Length":112,
|
||||||
|
"Format":"Dense",
|
||||||
|
"SubFormat":"None",
|
||||||
|
"SymbolRef":null},
|
||||||
|
|
||||||
|
"449":{
|
||||||
|
"Length":2,
|
||||||
|
"Format":"NumericLE",
|
||||||
|
"SubFormat":"Symbol",
|
||||||
|
"SymbolRef":{
|
||||||
|
"Label":"BMI",
|
||||||
|
"Part":"Low"}}},
|
||||||
|
|
||||||
|
"LvTables":{
|
||||||
|
},
|
||||||
|
|
||||||
|
"Visualizations":[],
|
||||||
|
"VisualizationAnimations":[],
|
||||||
|
"VisualizationSets":{
|
||||||
|
}}
|
@ -1,7 +1,7 @@
|
|||||||
; Copyright 2018 faddenSoft. All Rights Reserved.
|
; Copyright 2018 faddenSoft. All Rights Reserved.
|
||||||
; See the LICENSE.txt file for distribution terms (Apache 2.0).
|
; See the LICENSE.txt file for distribution terms (Apache 2.0).
|
||||||
|
|
||||||
*SYNOPSIS Symbols for test 2007-labels-and-symbols
|
*SYNOPSIS Symbols for test 2003x-labels-and-symbols
|
||||||
|
|
||||||
zip = $cd
|
zip = $cd
|
||||||
absl = $1029
|
absl = $1029
|
||||||
|
114
SourceGen/SGTestData/Expected/20030-labels-and-symbols_64tass.S
Normal file
114
SourceGen/SGTestData/Expected/20030-labels-and-symbols_64tass.S
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
;Project was edited to add a label in the middle of a dense hex region, and add
|
||||||
|
;a duplicate label.
|
||||||
|
.cpu "6502"
|
||||||
|
.enc sg_ascii
|
||||||
|
.cdef $20,$7e,$20
|
||||||
|
BMI1 = $30 ;opcode mnemonic
|
||||||
|
zip = $cd
|
||||||
|
absl = $1029
|
||||||
|
absh = $feed
|
||||||
|
|
||||||
|
plataddr = $3000 ;address only in platform file
|
||||||
|
projalsa = $3200 ;same val as projalso
|
||||||
|
|
||||||
|
* = $2345
|
||||||
|
start lda #zip
|
||||||
|
lda #zip+16
|
||||||
|
lda #zip-192
|
||||||
|
lda #<absh
|
||||||
|
lda #>absh
|
||||||
|
lda #<absh-192
|
||||||
|
lda #(>absh)+1
|
||||||
|
lda #<absl
|
||||||
|
lda #>absl
|
||||||
|
lda #<absl+192
|
||||||
|
lda #(>absl)-1
|
||||||
|
lda #<start
|
||||||
|
lda #>start
|
||||||
|
lda zip+1
|
||||||
|
lda @wzip+1
|
||||||
|
lda absh-1
|
||||||
|
lda absh+1
|
||||||
|
lda start+1
|
||||||
|
lda start-1
|
||||||
|
jmp _L23A3
|
||||||
|
|
||||||
|
.byte zip
|
||||||
|
.byte <absh
|
||||||
|
.byte >absh
|
||||||
|
.byte <start
|
||||||
|
.byte >start
|
||||||
|
.word zip
|
||||||
|
.word absl
|
||||||
|
.word 0+(absl >> 8)
|
||||||
|
.word absl-$1000
|
||||||
|
.word 0+(absl >> 8)-16
|
||||||
|
.word absh
|
||||||
|
.word 0+(absh >> 8)
|
||||||
|
.word absh-$f000
|
||||||
|
.word 0+(absh >> 8)+16
|
||||||
|
.word start
|
||||||
|
.word 0+(start >> 8)
|
||||||
|
.word start+1
|
||||||
|
.word 0+(start >> 8)
|
||||||
|
.byte $fe,$ed
|
||||||
|
.long zip
|
||||||
|
.long absh
|
||||||
|
.long 0+(absh >> 8)
|
||||||
|
.long start
|
||||||
|
.long 0+(start >> 8)
|
||||||
|
|
||||||
|
_L23A3 jmp _L1000_1
|
||||||
|
|
||||||
|
.logical $1000
|
||||||
|
_L1000_1 nop
|
||||||
|
_L1000 nop
|
||||||
|
_L1000_0 nop
|
||||||
|
_l1000 lda plataddr
|
||||||
|
lda $3100
|
||||||
|
lda projalsa
|
||||||
|
lda $3300
|
||||||
|
jmp calls
|
||||||
|
|
||||||
|
nop
|
||||||
|
targ nop
|
||||||
|
nop
|
||||||
|
L1015 jsr targ-1
|
||||||
|
jsr targ
|
||||||
|
jsr targ+1
|
||||||
|
L101E jmp targ-1
|
||||||
|
|
||||||
|
L1021 jmp targ
|
||||||
|
|
||||||
|
L1024 jmp targ+1
|
||||||
|
|
||||||
|
L1027 jmp targ-1
|
||||||
|
|
||||||
|
L102A jmp targ
|
||||||
|
|
||||||
|
L102D jmp targ+1
|
||||||
|
|
||||||
|
calls jsr L1015
|
||||||
|
jsr L101E
|
||||||
|
jsr L1021
|
||||||
|
jsr L1024
|
||||||
|
jsr L1027
|
||||||
|
jsr L102A
|
||||||
|
jsr L102D
|
||||||
|
jmp L1160
|
||||||
|
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f ;bulky
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.text "This is a long string. Put a label and comment on it to confir" ;stringy
|
||||||
|
.text "m that the label and comment only appear on the first line. T"
|
||||||
|
.text "he quick brown fox jumps over the lazy dogs."
|
||||||
|
|
||||||
|
L1160 adc #BMI1
|
||||||
|
rts
|
||||||
|
|
||||||
|
.here
|
@ -0,0 +1,107 @@
|
|||||||
|
;Project was edited to add a label in the middle of a dense hex region, and add
|
||||||
|
;a duplicate label.
|
||||||
|
BMI equ $30 ;opcode mnemonic
|
||||||
|
zip equ $cd
|
||||||
|
absl equ $1029
|
||||||
|
absh equ $feed
|
||||||
|
|
||||||
|
plataddr equ $3000 ;address only in platform file
|
||||||
|
projalsa equ $3200 ;same val as projalso
|
||||||
|
|
||||||
|
org $2345
|
||||||
|
start lda #zip
|
||||||
|
lda #zip+16
|
||||||
|
lda #zip+64
|
||||||
|
lda #<absh
|
||||||
|
lda #>absh
|
||||||
|
lda #<absh+64
|
||||||
|
lda #>absh+$100
|
||||||
|
lda #<absl
|
||||||
|
lda #>absl
|
||||||
|
lda #<absl-64
|
||||||
|
lda #>absl-$100
|
||||||
|
lda #<start
|
||||||
|
lda #>start
|
||||||
|
lda zip+1
|
||||||
|
lda: zip+1
|
||||||
|
lda absh-1
|
||||||
|
lda absh+1
|
||||||
|
lda start+1
|
||||||
|
lda start-1
|
||||||
|
jmp :L23A3
|
||||||
|
|
||||||
|
dfb zip
|
||||||
|
dfb <absh
|
||||||
|
dfb >absh
|
||||||
|
dfb <start
|
||||||
|
dfb >start
|
||||||
|
dw zip
|
||||||
|
dw absl
|
||||||
|
dw >absl
|
||||||
|
dw absl-$1000
|
||||||
|
dw >absl-$1000
|
||||||
|
dw absh
|
||||||
|
dw >absh
|
||||||
|
dw absh+$1000
|
||||||
|
dw >absh+$1000
|
||||||
|
dw start
|
||||||
|
dw >start
|
||||||
|
dw start+1
|
||||||
|
dw >start
|
||||||
|
ddb absh
|
||||||
|
adr zip
|
||||||
|
adr absh
|
||||||
|
adr >absh
|
||||||
|
adr start
|
||||||
|
adr >start
|
||||||
|
|
||||||
|
:L23A3 jmp :L1000_1
|
||||||
|
|
||||||
|
org $1000
|
||||||
|
:L1000_1 nop
|
||||||
|
:L1000 nop
|
||||||
|
:L1000_0 nop
|
||||||
|
:l1000 lda plataddr
|
||||||
|
lda $3100
|
||||||
|
lda projalsa
|
||||||
|
lda $3300
|
||||||
|
jmp calls
|
||||||
|
|
||||||
|
nop
|
||||||
|
targ nop
|
||||||
|
nop
|
||||||
|
L1015 jsr targ-1
|
||||||
|
jsr targ
|
||||||
|
jsr targ+1
|
||||||
|
L101E jmp targ-1
|
||||||
|
|
||||||
|
L1021 jmp targ
|
||||||
|
|
||||||
|
L1024 jmp targ+1
|
||||||
|
|
||||||
|
L1027 jmp targ-1
|
||||||
|
|
||||||
|
L102A jmp targ
|
||||||
|
|
||||||
|
L102D jmp targ+1
|
||||||
|
|
||||||
|
calls jsr L1015
|
||||||
|
jsr L101E
|
||||||
|
jsr L1021
|
||||||
|
jsr L1024
|
||||||
|
jsr L1027
|
||||||
|
jsr L102A
|
||||||
|
jsr L102D
|
||||||
|
jmp L1160
|
||||||
|
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f808182838485868788898a8b8c8d8e8f ;bulky
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f808182838485868788898a8b8c8d8e8f
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f808182838485868788898a8b8c8d8e8f
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
asc 'This is a long string. Put a label and comment on it to confir' ;stringy
|
||||||
|
asc 'm that the label and comment only appear on the first line. T'
|
||||||
|
asc 'he quick brown fox jumps over the lazy dogs.'
|
||||||
|
|
||||||
|
L1160 adc #BMI
|
||||||
|
rts
|
||||||
|
|
111
SourceGen/SGTestData/Expected/20030-labels-and-symbols_acme.S
Normal file
111
SourceGen/SGTestData/Expected/20030-labels-and-symbols_acme.S
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
;Project was edited to add a label in the middle of a dense hex region, and add
|
||||||
|
;a duplicate label.
|
||||||
|
!cpu 6502
|
||||||
|
BMI1 = $30 ;opcode mnemonic
|
||||||
|
zip = $cd
|
||||||
|
absl = $1029
|
||||||
|
absh = $feed
|
||||||
|
|
||||||
|
plataddr = $3000 ;address only in platform file
|
||||||
|
projalsa = $3200 ;same val as projalso
|
||||||
|
|
||||||
|
* = $0000
|
||||||
|
!pseudopc $2345 {
|
||||||
|
start lda #zip
|
||||||
|
lda #zip+16
|
||||||
|
lda #zip-192
|
||||||
|
lda #<absh
|
||||||
|
lda #>absh
|
||||||
|
lda #<absh-192
|
||||||
|
lda #(>absh)+1
|
||||||
|
lda #<absl
|
||||||
|
lda #>absl
|
||||||
|
lda #<absl+192
|
||||||
|
lda #(>absl)-1
|
||||||
|
lda #<start
|
||||||
|
lda #>start
|
||||||
|
lda zip+1
|
||||||
|
lda+2 zip+1
|
||||||
|
lda absh-1
|
||||||
|
lda absh+1
|
||||||
|
lda start+1
|
||||||
|
lda start-1
|
||||||
|
jmp @L23A3
|
||||||
|
|
||||||
|
!byte zip
|
||||||
|
!byte <absh
|
||||||
|
!byte >absh
|
||||||
|
!byte <start
|
||||||
|
!byte >start
|
||||||
|
!word zip
|
||||||
|
!word absl
|
||||||
|
!word 0+(absl >> 8)
|
||||||
|
!word absl-$1000
|
||||||
|
!word 0+(absl >> 8)-16
|
||||||
|
!word absh
|
||||||
|
!word 0+(absh >> 8)
|
||||||
|
!word absh-$f000
|
||||||
|
!word 0+(absh >> 8)+16
|
||||||
|
!word start
|
||||||
|
!word 0+(start >> 8)
|
||||||
|
!word start+1
|
||||||
|
!word 0+(start >> 8)
|
||||||
|
!byte $fe,$ed
|
||||||
|
!24 zip
|
||||||
|
!24 absh
|
||||||
|
!24 0+(absh >> 8)
|
||||||
|
!24 start
|
||||||
|
!24 0+(start >> 8)
|
||||||
|
|
||||||
|
@L23A3 jmp @L1000_1
|
||||||
|
|
||||||
|
} ;!pseudopc
|
||||||
|
!pseudopc $1000 {
|
||||||
|
@L1000_1 nop
|
||||||
|
@L1000 nop
|
||||||
|
@L1000_0 nop
|
||||||
|
@l1000 lda plataddr
|
||||||
|
lda $3100
|
||||||
|
lda projalsa
|
||||||
|
lda $3300
|
||||||
|
jmp calls
|
||||||
|
|
||||||
|
nop
|
||||||
|
targ nop
|
||||||
|
nop
|
||||||
|
L1015 jsr targ-1
|
||||||
|
jsr targ
|
||||||
|
jsr targ+1
|
||||||
|
L101E jmp targ-1
|
||||||
|
|
||||||
|
L1021 jmp targ
|
||||||
|
|
||||||
|
L1024 jmp targ+1
|
||||||
|
|
||||||
|
L1027 jmp targ-1
|
||||||
|
|
||||||
|
L102A jmp targ
|
||||||
|
|
||||||
|
L102D jmp targ+1
|
||||||
|
|
||||||
|
calls jsr L1015
|
||||||
|
jsr L101E
|
||||||
|
jsr L1021
|
||||||
|
jsr L1024
|
||||||
|
jsr L1027
|
||||||
|
jsr L102A
|
||||||
|
jsr L102D
|
||||||
|
jmp L1160
|
||||||
|
|
||||||
|
!hex 808182838485868788898a8b8c8d8e8f808182838485868788898a8b8c8d8e8f ;bulky
|
||||||
|
!hex 808182838485868788898a8b8c8d8e8f808182838485868788898a8b8c8d8e8f
|
||||||
|
!hex 808182838485868788898a8b8c8d8e8f808182838485868788898a8b8c8d8e8f
|
||||||
|
!hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
!text "This is a long string. Put a label and comment on it to confir" ;stringy
|
||||||
|
!text "m that the label and comment only appear on the first line. T"
|
||||||
|
!text "he quick brown fox jumps over the lazy dogs."
|
||||||
|
|
||||||
|
L1160 adc #BMI1
|
||||||
|
rts
|
||||||
|
|
||||||
|
} ;!pseudopc
|
113
SourceGen/SGTestData/Expected/20030-labels-and-symbols_cc65.S
Normal file
113
SourceGen/SGTestData/Expected/20030-labels-and-symbols_cc65.S
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
;Project was edited to add a label in the middle of a dense hex region, and add
|
||||||
|
;a duplicate label.
|
||||||
|
.setcpu "6502"
|
||||||
|
BMI1 = $30 ;opcode mnemonic
|
||||||
|
zip = $cd
|
||||||
|
absl = $1029
|
||||||
|
absh = $feed
|
||||||
|
|
||||||
|
plataddr = $3000 ;address only in platform file
|
||||||
|
projalsa = $3200 ;same val as projalso
|
||||||
|
|
||||||
|
; .segment "SEG000"
|
||||||
|
.org $2345
|
||||||
|
start: lda #zip
|
||||||
|
lda #zip+16
|
||||||
|
lda #zip-192
|
||||||
|
lda #<absh
|
||||||
|
lda #>absh
|
||||||
|
lda #<absh-192
|
||||||
|
lda #>absh+1
|
||||||
|
lda #<absl
|
||||||
|
lda #>absl
|
||||||
|
lda #<absl+192
|
||||||
|
lda #>absl-1
|
||||||
|
lda #<start
|
||||||
|
lda #>start
|
||||||
|
lda zip+1
|
||||||
|
lda a:zip+1
|
||||||
|
lda absh-1
|
||||||
|
lda absh+1
|
||||||
|
lda start+1
|
||||||
|
lda start-1
|
||||||
|
jmp @L23A3
|
||||||
|
|
||||||
|
.byte zip
|
||||||
|
.byte <absh
|
||||||
|
.byte >absh
|
||||||
|
.byte <start
|
||||||
|
.byte >start
|
||||||
|
.word zip
|
||||||
|
.word absl
|
||||||
|
.word absl >> 8
|
||||||
|
.word absl-$1000
|
||||||
|
.word absl >> 8 -16
|
||||||
|
.word absh
|
||||||
|
.word absh >> 8
|
||||||
|
.word absh-$f000
|
||||||
|
.word absh >> 8 +16
|
||||||
|
.word start
|
||||||
|
.word start >> 8
|
||||||
|
.word start+1
|
||||||
|
.word start >> 8
|
||||||
|
.dbyt absh
|
||||||
|
.faraddr zip
|
||||||
|
.faraddr absh
|
||||||
|
.faraddr absh >> 8
|
||||||
|
.faraddr start
|
||||||
|
.faraddr start >> 8
|
||||||
|
|
||||||
|
@L23A3: jmp @L1000_1
|
||||||
|
|
||||||
|
; .segment "SEG001"
|
||||||
|
.org $1000
|
||||||
|
@L1000_1: nop
|
||||||
|
@L1000: nop
|
||||||
|
@L1000_0: nop
|
||||||
|
@l1000: lda plataddr
|
||||||
|
lda $3100
|
||||||
|
lda projalsa
|
||||||
|
lda $3300
|
||||||
|
jmp calls
|
||||||
|
|
||||||
|
nop
|
||||||
|
targ: nop
|
||||||
|
nop
|
||||||
|
L1015: jsr targ-1
|
||||||
|
jsr targ
|
||||||
|
jsr targ+1
|
||||||
|
L101E: jmp targ-1
|
||||||
|
|
||||||
|
L1021: jmp targ
|
||||||
|
|
||||||
|
L1024: jmp targ+1
|
||||||
|
|
||||||
|
L1027: jmp targ-1
|
||||||
|
|
||||||
|
L102A: jmp targ
|
||||||
|
|
||||||
|
L102D: jmp targ+1
|
||||||
|
|
||||||
|
calls: jsr L1015
|
||||||
|
jsr L101E
|
||||||
|
jsr L1021
|
||||||
|
jsr L1024
|
||||||
|
jsr L1027
|
||||||
|
jsr L102A
|
||||||
|
jsr L102D
|
||||||
|
jmp L1160
|
||||||
|
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f ;bulky
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte $80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$8a,$8b,$8c,$8d,$8e,$8f
|
||||||
|
.byte "This is a long string. Put a label and comment on it to confir" ;stringy
|
||||||
|
.byte "m that the label and comment only appear on the first line. T"
|
||||||
|
.byte "he quick brown fox jumps over the lazy dogs."
|
||||||
|
|
||||||
|
L1160: adc #BMI1
|
||||||
|
rts
|
||||||
|
|
@ -0,0 +1,13 @@
|
|||||||
|
# 6502bench SourceGen generated linker script for 20030-labels-and-symbols
|
||||||
|
MEMORY {
|
||||||
|
MAIN: file=%O, start=%S, size=65536;
|
||||||
|
# MEM000: file=%O, start=$2345, size=97;
|
||||||
|
# MEM001: file=%O, start=$1000, size=355;
|
||||||
|
}
|
||||||
|
SEGMENTS {
|
||||||
|
CODE: load=MAIN, type=rw;
|
||||||
|
# SEG000: load=MEM000, type=rw;
|
||||||
|
# SEG001: load=MEM001, type=rw;
|
||||||
|
}
|
||||||
|
FEATURES {}
|
||||||
|
SYMBOLS {}
|
134
SourceGen/SGTestData/Source/20030-labels-and-symbols.S
Normal file
134
SourceGen/SGTestData/Source/20030-labels-and-symbols.S
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
; Copyright 2018 faddenSoft. All Rights Reserved.
|
||||||
|
; See the LICENSE.txt file for distribution terms (Apache 2.0).
|
||||||
|
;
|
||||||
|
; This is a reduced version of the 65816-based test.
|
||||||
|
;
|
||||||
|
; Assembler: Merlin 32
|
||||||
|
|
||||||
|
absl equ $1029
|
||||||
|
absh equ $feed
|
||||||
|
zip equ $cd
|
||||||
|
|
||||||
|
org $2345
|
||||||
|
|
||||||
|
start ;set this label
|
||||||
|
; load 8/16-bit symbols in different ways
|
||||||
|
lda #zip
|
||||||
|
lda #zip+16
|
||||||
|
lda #zip+64
|
||||||
|
|
||||||
|
lda #<absh
|
||||||
|
lda #>absh
|
||||||
|
lda #<absh+64
|
||||||
|
lda #>absh+64
|
||||||
|
|
||||||
|
lda #<absl
|
||||||
|
lda #>absl
|
||||||
|
lda #<absl-64
|
||||||
|
lda #>absl-64
|
||||||
|
|
||||||
|
lda #<start
|
||||||
|
lda #>start
|
||||||
|
|
||||||
|
lda zip+1
|
||||||
|
lda: zip+1
|
||||||
|
lda absh-1
|
||||||
|
lda absh+1
|
||||||
|
lda start+1
|
||||||
|
lda start-1
|
||||||
|
|
||||||
|
jmp :skipdata
|
||||||
|
|
||||||
|
; reference 16/24-bit symbol in data statements
|
||||||
|
dfb zip
|
||||||
|
dfb <absh
|
||||||
|
dfb >absh
|
||||||
|
dfb <start
|
||||||
|
dfb >start
|
||||||
|
|
||||||
|
dw zip
|
||||||
|
dw <absl
|
||||||
|
dw >absl
|
||||||
|
dw <absl-$1000
|
||||||
|
dw >absl-$1000
|
||||||
|
dw <absh
|
||||||
|
dw >absh
|
||||||
|
dw <absh+$1000
|
||||||
|
dw >absh+$1000
|
||||||
|
dw <start
|
||||||
|
dw >start
|
||||||
|
dw <start+1
|
||||||
|
dw >start+1
|
||||||
|
|
||||||
|
dfb >absh ;format as 16-bit big-endian
|
||||||
|
dfb <absh
|
||||||
|
|
||||||
|
adr zip
|
||||||
|
adr <absh
|
||||||
|
adr >absh
|
||||||
|
adr <start
|
||||||
|
adr >start
|
||||||
|
|
||||||
|
:skipdata
|
||||||
|
jmp nextchunk
|
||||||
|
|
||||||
|
org $1000
|
||||||
|
nextchunk
|
||||||
|
nop ;leave this as auto-label
|
||||||
|
nop ;label this L1000
|
||||||
|
nop ;label this L1000_0
|
||||||
|
|
||||||
|
plataddr equ $3000 ;address only in platform file
|
||||||
|
projover equ $3100 ;replaced by proj symbol w/same name, diff addr (no match)
|
||||||
|
projalso equ $3200 ;also in project, twice w/different name +/- alpha; low should win
|
||||||
|
nosym equ $3300 ;should not match anything
|
||||||
|
|
||||||
|
lda plataddr
|
||||||
|
lda projover
|
||||||
|
lda projalso
|
||||||
|
lda nosym
|
||||||
|
|
||||||
|
jmp next
|
||||||
|
|
||||||
|
target0 nop
|
||||||
|
target1 nop ;point everything here
|
||||||
|
target2 nop
|
||||||
|
|
||||||
|
|
||||||
|
t0 jsr target0
|
||||||
|
jsr target1
|
||||||
|
jsr target2
|
||||||
|
t1a jmp target0
|
||||||
|
t1b jmp target1
|
||||||
|
t1c jmp target2
|
||||||
|
t3a jmp target0
|
||||||
|
t3b jmp target1
|
||||||
|
t3c jmp target2
|
||||||
|
|
||||||
|
next
|
||||||
|
jsr t0
|
||||||
|
jsr t1a
|
||||||
|
jsr t1b
|
||||||
|
jsr t1c
|
||||||
|
jsr t3a
|
||||||
|
jsr t3b
|
||||||
|
jsr t3c
|
||||||
|
|
||||||
|
jmp :skiphex
|
||||||
|
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f ;add label and comment
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
hex 808182838485868788898a8b8c8d8e8f
|
||||||
|
|
||||||
|
asc 'This is a long string. Put a label and comment '
|
||||||
|
asc 'on it to confirm that the label and comment only '
|
||||||
|
asc 'appear on the first line. The quick brown fox '
|
||||||
|
asc 'jumps over the lazy dogs.'
|
||||||
|
|
||||||
|
:skiphex
|
||||||
|
adc #$30 ;set to BMI to test constant vs. instr
|
||||||
|
rts
|
Loading…
x
Reference in New Issue
Block a user