Gopher2600/debugger/commandline_options.go
2024-09-07 17:47:21 +01:00

54 lines
1.7 KiB
Go

// This file is part of Gopher2600.
//
// Gopher2600 is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Gopher2600 is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Gopher2600. If not, see <https://www.gnu.org/licenses/>.
package debugger
// CommandLineOptions holds all the values that can be specified on the command line
// when launching the application. Some arguments are used by both modes while
// some are mode specific.
//
// The reason why we maintain pointers to the values is because we are using
// the modalflag package and by induction the flag package in the standard
// library, which is where this requirement originates.
type CommandLineOptions struct {
// common to debugger and play modes
Log bool
Spec string
FpsCap bool
Multiload int
Mapping string
Bank string
Left string
Right string
Swap bool
Profile string
ELF string
// playmode only
ComparisonROM string
ComparisonPrefs string
Record bool
RecordFilename string
PlaybackCheckROM bool
PlaybackIgnoreDigest bool
PatchFile string
Wav bool
NoEject bool
Macro string
// debugger only
InitScript string
TermType string
}