mirror of
https://github.com/fadden/6502bench.git
synced 2024-12-11 13:50:13 +00:00
d3e00b2342
The $Cxxx I/O locations are mapped into banks $E0/E1, and are usually configured to appear in banks $00/01 as well. Direct access to locations in banks $E0/E1 is common in 16-bit code, but we only had definitions for $E0. This adds a clone of definitions for $E1, and renames the symbols to be _E0/_E1 instead of _GS. This can also be solved with MULTI_MASK, but that will always use $E0 as the base address, so references to $E1/Cxxx will have a large adjustment added ("+$10000"), which is kind of ugly. Note we still don't have definitions for $01/Cxxx. I'll add those if I run into them in 16-bit code. (That might be a reasonable use of MULTI_MASK; feels less ugly somehow.)
340 lines
8.0 KiB
JSON
340 lines
8.0 KiB
JSON
{
|
|
"_copyright" : "Copyright 2018 faddenSoft. All rights reserved.",
|
|
"_license" : "Apache 2.0; see LICENSE.txt for details",
|
|
"Contents" : "6502bench SourceGen sysdef v1",
|
|
"Defs" : [
|
|
{
|
|
"Name" : "Apple //e",
|
|
"GroupName" : "Apple",
|
|
"Cpu" : "65C02",
|
|
"Speed" : "1.023",
|
|
"Description" : "Deluxe 8-bit Apple II system, configured for ProDOS.",
|
|
"SymbolFiles" : [
|
|
"RT:Apple/F8-ROM.sym65",
|
|
"RT:Apple/Cxxx-IO.sym65",
|
|
"RT:Apple/C08x-DiskII.sym65",
|
|
"RT:Apple/ProDOS8.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Apple/ProDOS8.cs",
|
|
"RT:Apple/VisHiRes.cs"
|
|
],
|
|
"Parameters" : {
|
|
"load-address":"0x2000"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Apple ][+",
|
|
"GroupName" : "Apple",
|
|
"Cpu" : "6502",
|
|
"Speed" : "1.023",
|
|
"Description" : "Early 8-bit Apple II system, configured for DOS 3.3.",
|
|
"SymbolFiles" : [
|
|
"RT:Apple/F8-ROM.sym65",
|
|
"RT:Apple/Cxxx-IO.sym65",
|
|
"RT:Apple/C08x-DiskII.sym65",
|
|
"RT:Apple/DOS33.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Apple/VisHiRes.cs"
|
|
],
|
|
"Parameters" : {
|
|
"load-address":"0x2000"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Apple IIgs (P8)",
|
|
"GroupName" : "Apple",
|
|
"Cpu" : "65816",
|
|
"Speed" : "2.8",
|
|
"Description" : "Apple IIgs, configured for ProDOS 8.",
|
|
"SymbolFiles" : [
|
|
"RT:Apple/F8-ROM.sym65",
|
|
"RT:Apple/Cxxx-IO.sym65",
|
|
"RT:Apple/C08x-DiskII.sym65",
|
|
"RT:Apple/E0Cxxx-IO.sym65",
|
|
"RT:Apple/E1Cxxx-IO.sym65",
|
|
"RT:Apple/ProDOS8.sym65",
|
|
"RT:Apple/IIgs-ROM.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Apple/ProDOS8.cs",
|
|
"RT:Apple/VisHiRes.cs"
|
|
],
|
|
"Parameters" : {
|
|
"load-address":"0x2000",
|
|
"entry-flags":"emulation"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Apple IIgs (GS/OS)",
|
|
"GroupName" : "Apple",
|
|
"Cpu" : "65816",
|
|
"Speed" : "2.8",
|
|
"Description" : "Apple IIgs, configured for GS/OS.",
|
|
"SymbolFiles" : [
|
|
"RT:Apple/Cxxx-IO.sym65",
|
|
"RT:Apple/C08x-DiskII.sym65",
|
|
"RT:Apple/E0Cxxx-IO.sym65",
|
|
"RT:Apple/E1Cxxx-IO.sym65",
|
|
"RT:Apple/IIgs-ROM.sym65",
|
|
"RT:Apple/GSOS.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Apple/GSOS.cs",
|
|
"RT:Apple/IIgs-Toolbox.cs"
|
|
],
|
|
"Parameters" : {
|
|
"load-address":"0x2000",
|
|
"entry-flags":"native-long"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Apple ///",
|
|
"GroupName" : "Apple",
|
|
"Cpu" : "6502",
|
|
"Speed" : "2",
|
|
"Description" : "Apple /// system, configured for SOS.",
|
|
"SymbolFiles" : [
|
|
"RT:Apple/A3-ROM.sym65",
|
|
"RT:Apple/A3-IO.sym65",
|
|
"RT:Apple/SOS.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Apple/SOS.cs"
|
|
],
|
|
"Parameters" : {
|
|
"load-address":"0x2000",
|
|
"two-byte-brk":"true"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Apple-1",
|
|
"GroupName" : "Apple",
|
|
"Cpu" : "6502",
|
|
"Speed" : "1",
|
|
"Description" : "Apple-1 system.",
|
|
"SymbolFiles" : [
|
|
"RT:Apple/Apple1.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Atari 800",
|
|
"GroupName" : "Atari",
|
|
"Cpu" : "6502B",
|
|
"Speed" : "1.79",
|
|
"Description" : "Atari 800 [placeholder].",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Atari 2600",
|
|
"GroupName" : "Atari",
|
|
"Cpu" : "6507",
|
|
"Speed" : "1.19",
|
|
"Description" : "Atari 2600 video game system.",
|
|
"SymbolFiles" : [
|
|
"RT:Atari/2600.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Atari/Vis2600.cs"
|
|
],
|
|
"Parameters" : {
|
|
"load-address":"0xf000"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Atari 5200",
|
|
"GroupName" : "Atari",
|
|
"Cpu" : "6502C",
|
|
"Speed" : "1.79",
|
|
"Description" : "Atari 5200 [placeholder].",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Atari Lynx",
|
|
"GroupName" : "Atari",
|
|
"Cpu" : "65SC02",
|
|
"Speed" : "4",
|
|
"Description" : "Atari Lynx handheld game console.",
|
|
"SymbolFiles" : [
|
|
"RT:Atari/Lynx.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Commodore 64 (PRG)",
|
|
"GroupName" : "Commodore",
|
|
"Cpu" : "6510",
|
|
"Speed" : "1.023",
|
|
"Description" : "Commodore 64 home computer. The first two bytes hold the load address.",
|
|
"SymbolFiles" : [
|
|
"RT:Commodore/C64-Kernal.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Commodore/VisC64.cs"
|
|
],
|
|
"Parameters" : {
|
|
"first-word-is-load-addr":"true",
|
|
"default-text-encoding":"c64-petscii"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Commodore 64 (BIN)",
|
|
"GroupName" : "Commodore",
|
|
"Cpu" : "6510",
|
|
"Speed" : "1.023",
|
|
"Description" : "Commodore 64 home computer. General binary file.",
|
|
"SymbolFiles" : [
|
|
"RT:Commodore/C64-Kernal.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Commodore/VisC64.cs"
|
|
],
|
|
"Parameters" : {
|
|
"default-text-encoding":"c64-petscii"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Commodore 128",
|
|
"GroupName" : "Commodore",
|
|
"Cpu" : "8502",
|
|
"Speed" : "2",
|
|
"Description" : "Commodore 128 home computer.",
|
|
"SymbolFiles" : [
|
|
"RT:Commodore/C64-Kernal.sym65",
|
|
"RT:Commodore/C128-Kernal.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
"RT:Commodore/VisC64.cs"
|
|
],
|
|
"Parameters" : {
|
|
"default-text-encoding":"c64-petscii"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Commodore Pet 2001",
|
|
"GroupName" : "Commodore",
|
|
"Cpu" : "6502",
|
|
"Speed" : "1",
|
|
"Description" : "Commodore Pet [placeholder].",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
"default-text-encoding":"c64-petscii"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "NES",
|
|
"GroupName" : "Nintendo",
|
|
"Cpu" : "2A03",
|
|
"Speed" : "1.79",
|
|
"Description" : "Nintendo Entertainment System.",
|
|
"SymbolFiles" : [
|
|
"RT:Nintendo/NES.sym65"
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Super NES",
|
|
"GroupName" : "Nintendo",
|
|
"Cpu" : "5A22",
|
|
"Speed" : "3.58",
|
|
"Description" : "Super Nintendo Entertainment System [placeholder].",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Generic 6502",
|
|
"GroupName" : "Generic",
|
|
"Cpu" : "6502",
|
|
"Speed" : "1",
|
|
"Description" : "Generic 6502-based system.",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Generic 6502 + Undoc",
|
|
"GroupName" : "Generic",
|
|
"Cpu" : "6502",
|
|
"Speed" : "1",
|
|
"Description" : "Generic 6502-based system, with undocumented opcodes enabled.",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
"undocumented-opcodes":"true"
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Generic 65C02",
|
|
"GroupName" : "Generic",
|
|
"Cpu" : "65C02",
|
|
"Speed" : "1",
|
|
"Description" : "Generic 65C02-based system.",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Generic W65C02",
|
|
"GroupName" : "Generic",
|
|
"Cpu" : "W65C02",
|
|
"Speed" : "1",
|
|
"Description" : "Generic W65C02-based system (65C02 with Rockwell and WDC extensions).",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
},
|
|
{
|
|
"Name" : "Generic 65816",
|
|
"GroupName" : "Generic",
|
|
"Cpu" : "65816",
|
|
"Speed" : "1",
|
|
"Description" : "Generic 65816-based system.",
|
|
"SymbolFiles" : [
|
|
],
|
|
"ExtensionScripts" : [
|
|
],
|
|
"Parameters" : {
|
|
}
|
|
}
|
|
]
|
|
}
|