Gopher2600/disassembly/symbols/doc.go
2021-06-27 18:32:10 +01:00

32 lines
1.5 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 symbols helps keep track of address symbols for the currently loaded
// cartridge. It will load symbols from a DASM symbol file if one can be found.
// It also handles the allocation of standard (or canonical) symbol names.
//
// In the context of the Gopher2600 project, it works best if the Symbol type
// is declared staticially and the ReadSymbolsFile() function called to
// populate the symbol tables. See the disassembly package for more details.
// Even if there is no symbols file, the tables will be populated with
// canonical names.
//
// Also works best in conjunction with the parent disassembly package where the
// disassembly process will remove any labels from "unblessed" cartridge
// addresses.
//
// All addresses supplied to functions in the symbols package will be mapped
// (ie. normalised) and symbols will be trimmed of excess space.
package symbols