Documentation ¶
Index ¶
- Constants
- Variables
- func Add(num int, parent int, name string, tc *Card)
- func AlterTask0Map37To2000ReturnSaved(ses *Session, payload []byte) byte
- func AsciiToInjectBytes(s string) []byte
- func AttemptToLoadModule(filename string)
- func BeginMux(ses *Session, p uint, pay []byte)
- func Bold(s string) string
- func BoldInt(x int) string
- func CanAccess(principals []string, path string, toWrite bool) bool
- func CanAccess1(prin string, path string, toWrite bool) bool
- func Catch(label string, fn func()) (err string)
- func CheckSum16Ram(conn net.Conn, addr uint, n uint) uint
- func Chop(t T.TextScreen, line string) (lines []string)
- func ContinueLongLines(t T.TextScreen, lines []string) (result []string)
- func CopyFile(src, dest string) error
- func CopyTcp(onFinish chan bool, r, w net.Conn, what string)
- func CreateHomeIfNeeded(ses *Session) (string, string, string)
- func DescribeVideoModes(page0 []byte) (str string, byt []byte)
- func DoLemMan(conn net.Conn, in []byte, pd uint) []byte
- func DrawBoxed(t T.TextScreen, x, y uint, lines []string, invertHeadChar bool)
- func DrawFullScreenLines(t T.TextScreen, lines []string, title string)
- func DuplicateFileToTemp(filename string, startup string) *os.File
- func EchoCommand(o *Proc) string
- func EmptyDecbInitializedDiskImage() []byte
- func EndMux(ses *Session, p uint, pay []byte)
- func ErrorAlert(t T.TextScreen, lines []string)
- func ErrorAlertChop(t T.TextScreen, line string)
- func ExtractName(bb []byte, i uint, filename string) string
- func Flip13(a string) string
- func Flip13AfterFlipMark(a string) string
- func Flip13Filepath(a string) string
- func GetBCommand(o *Proc) string
- func GetBlockDevice(ses *Session) *os.File
- func GetHellos(conn net.Conn) map[uint][]byte
- func GetSerial() int
- func GetTCommand(o *Proc) string
- func GimeText40x24_OnPage37_ReturnNumRows(ses *Session, payload []byte, extraVerticalGap byte) int
- func HdbDosHijack(ses *Session, payload []byte)
- func HdbDosSector(ses *Session, payload []byte)
- func HelpCommand(o *Proc) string
- func HitachiMode(com *coms.Comm, native bool)
- func InitDemos()
- func Inject(ses *Session, sideload []byte, dest uint, exec bool, payload []byte)
- func L0Init()
- func LMChgDir(pd uint, regs *LMRegs) (status byte)
- func LMClose(pd uint, regs *LMRegs) (status byte)
- func LMDelete(pd uint, regs *LMRegs, name string) (status byte)
- func LMGetStt(pd uint, regs *LMRegs) (payload []byte, status byte)
- func LMOpen(pd uint, regs *LMRegs, mode byte, name string, create bool) (status byte)
- func LMRead(pd uint, regs *LMRegs, linely bool) (payload []byte, status byte)
- func LMSeek(pd uint, regs *LMRegs) (status byte)
- func LMWrite(pd uint, regs *LMRegs, pay_in []byte, linely bool) (status byte)
- func LemManCommandName(b byte) string
- func LemmaError(format string, args ...any) byte
- func Level0Control(conn net.Conn, ses *Session)
- func Listen()
- func MidMux(ses *Session, p uint, pay []byte)
- func NewDriveTempName(drive uint) string
- func NextInode() int
- func NonduplicatingDuplicateFileToTemp(filename string) *os.File
- func OnText40At2000Run(ses *Session, payload []byte, runMe func())
- func OnTextVDGAt0400Run(ses *Session, payload []byte, runMe func())
- func Peek(conn net.Conn, addr uint, n uint) []byte
- func Peek2Ram(conn net.Conn, addr uint, n uint) []byte
- func PeekPage0(ses *Session) []byte
- func PeekRam(conn net.Conn, addr uint, n uint) []byte
- func PokeRam(conn net.Conn, addr uint, data []byte)
- func PutTCommand(o *Proc) string
- func ReadFive(conn net.Conn) (cmd byte, n uint, p uint)
- func ReadFiveLoop(conn net.Conn, ses *Session)
- func ReadN(conn net.Conn, n uint) []byte
- func Reboot(com *coms.Comm)
- func RecolorMenuBar(t T.TextScreen, group *Menu, chosen *Menu)
- func ReconnectPort(ses *Session, port int)
- func RegsString(b []byte) string
- func Rot13(a string) string
- func RunCards(ses *Session) (notice string)
- func RunWeb()
- func ScanKeyboard(conn net.Conn) (keybits [8]byte)
- func SeekSectorReturnLSN(block *os.File, n uint, p uint) int64
- func SendInitialInjections(ses *Session)
- func Serve(conn net.Conn)
- func SetVideoMode(ses *Session, hrmode, hrwidth, pmode byte)
- func ShortTimestamp() string
- func SpeedMode(com *coms.Comm, value byte)
- func SplitTextAsLines(text []byte) (lines []string)
- func TestCharRow40(nthRow byte) []byte
- func TextChooserShell(com *coms.Comm, ds *DriveSession, t T.TextScreen)
- func TimeVector(t time.Time) []byte
- func Timestamp() string
- func TruePath(pizgaPath string) string
- func UnHijack(com *coms.Comm)
- func UndoAlterTask0(ses *Session, saved byte)
- func Up(x byte) byte
- func UploadProgram(conn net.Conn, filename string)
- func UpperCleanName(s []byte, maxLen int) string
- func VerticalEchoCommand(o *Proc) string
- func VideoModes(page0 []byte) (hrmode, hrwidth, pmode byte)
- func ViewBoxedLines(t T.TextScreen, lines []string, color byte)
- func ViewBoxedText(t T.TextScreen, text []byte, color byte)
- func ViewFullScreenLines(t T.TextScreen, lines []string, color byte)
- func ViewFullScreenText(t T.TextScreen, text []byte, color byte)
- func WaitForBreak(t T.TextScreen)
- func WriteFive(conn net.Conn, cmd byte, n uint, p uint)
- type Alert
- type BaseModel
- func (mod *BaseModel) Decoration(ds *DriveSession) string
- func (mod *BaseModel) Hot() bool
- func (mod *BaseModel) KidAtFocus(focus uint) Model
- func (mod *BaseModel) Kids() []Model
- func (mod *BaseModel) Name() string
- func (mod *BaseModel) Parent() Model
- func (mod *BaseModel) Path() string
- func (mod *BaseModel) ReKids() []Model
- func (mod *BaseModel) ShowMenus() *Menu
- func (mod *BaseModel) Size() int64
- func (mod *BaseModel) String() string
- func (mod *BaseModel) UnixPath() string
- type Card
- type CommandFunc
- type DriveImage
- type DriveSession
- func (ds *DriveSession) CreateEmptyDriveImageAtIfNeeded(nth byte) *DriveImage
- func (ds *DriveSession) HdbDosCleanup()
- func (ds *DriveSession) HdbDosCleanupOneDrive(driveNum byte)
- func (ds *DriveSession) IsModelMounted(c Model) (drive byte, ok bool)
- func (ds *DriveSession) SetDrive(nth byte, c Model)
- func (ds *DriveSession) String() string
- type EditAction
- type GotoBookmarkAction
- type HdbDosSession
- type HelpAction
- type IScreen
- type L0File
- type L0Module
- type L0Proc
- type LMPath
- type LMRegs
- type LemmaHandler
- type LineBuf
- type Menu
- type MenuAction
- type MenuActionHistory
- type ModeAction
- type Model
- type MountAction
- type Navigator
- func (nav *Navigator) ClearScreen()
- func (nav *Navigator) Confirm(s string) bool
- func (nav *Navigator) DoAction(chosen *Menu, c Model, focus uint, boxX, boxY uint)
- func (t *Navigator) Loop()
- func (nav *Navigator) NavStep(c Model) Model
- func (nav *Navigator) Render(mod Model, focus uint)
- func (nav *Navigator) TryMenu(menu *Menu, c Model, focus uint, ch byte)
- type NumStr
- type NumStrSlice
- type Proc
- func (o *Proc) CocoClose()
- func (o *Proc) CocoCreate(filename string)
- func (o *Proc) CocoError(message string)
- func (o *Proc) CocoOpen(filename string)
- func (o *Proc) Exit3(verdict string)
- func (o *Proc) LowGetOne(expected byte) []byte
- func (o *Proc) LowPutOne(q coms.Quint, args ...any)
- func (o *Proc) PrintfStderr(format string, args ...any)
- func (o *Proc) Read(buf []byte)
- func (o *Proc) ReadLine() string
- func (o *Proc) RunCommandFunc(fn CommandFunc)
- func (o *Proc) WriteBytes(buf []byte)
- func (o *Proc) WriteLine(line string)
- type Regs6809
- type Session
- type SetBookmarkAction
- type SlashHandler
- type TaggedBytes
- type TreeNode
- type UnmountAllAction
- type VideoSettings
- type ViewBookmarksAction
- type ViewHexAction
- type ViewInfoAction
- type ViewMountsAction
- type ViewTextAction
- type XTextScreen
Constants ¶
View Source
const ( Sys_Data = 0x7E00 // and upward Sys_Load = 0x7000 // and upward Usr_Load = 0x3000 // and upward Usr_Stack = 0x3000 // downward Usr_Data = 0x0800 // and upward )
View Source
const ( Ready = 1 Waiting = 2 Blocked = 3 )
View Source
const ( BadRequest = 400 ImATeapot = 418 )
View Source
const CocoBreak = 3
View Source
const CocoClear = 12
View Source
const CocoDown = 10
View Source
const CocoEnter = 13
View Source
const CocoLeft = 8
View Source
const CocoRight = 9
View Source
const CocoShiftDown = 91 // '['
View Source
const CocoShiftLeft = 21 // ^U
View Source
const CocoShiftRight = 93 // ']'
View Source
const CocoShiftUp = 95 // '_'
View Source
const CocoUp = 94
View Source
const DirPerm = 0775
View Source
const FilePerm = 0664
View Source
const FloppySize35 = 161280
View Source
const FloppySize40 = 184320
View Source
const FloppySize80 = 368640
View Source
const HeaderSize = 2
View Source
const HomePageHtml = `` /* 1428-byte string literal not displayed */
View Source
const LemmaErrorMax = 99
View Source
const LemmaErrorMin = 80
LemmaError() takes Printf arguments, logs the error in the lemma server, and returns an error number in 80..99 for the OS9 error.
View Source
const MuxBad = '-'
View Source
const MuxEnough = '.'
View Source
const MuxGoAhead = ':'
MidMux marks.
View Source
const MuxGood = '+'
EndMux marks.
View Source
const MuxNotYet = '~'
View Source
const MuxOK = ';'
View Source
const NumDrives = 10
View Source
const SET_R0_ONE = 0xFFD7
View Source
const SET_R0_ZERO = 0xFFD6
file:///home/strick/doc/CoCo%20Hardware%20Reference.pdf
View Source
const SET_R1_ONE = 0xFFD9
View Source
const SET_R1_ZERO = 0xFFD8
View Source
const TEMP = "Temp"
Variables ¶
View Source
var BLOCK0 = flag.String("block0", "", "[one program mode] filename of block drive 0")
View Source
var Block0 *os.File
View Source
var Book_Menu = &Menu{ Name: "Book", Items: []*Menu{ &Menu{ Name: "Set Bookmark", Items: SetBookmark_Menu.Items, }, &Menu{ Name: "View Bookmarks", Action: &ViewBookmarksAction{}, }, &Menu{ Name: "0 : Goto Bookmark 0", Action: MakeGotoBookmark(0), }, &Menu{ Name: "1 : Goto Bookmark 1", Action: MakeGotoBookmark(1), }, &Menu{ Name: "2 : Goto Bookmark 2", Action: MakeGotoBookmark(2), }, &Menu{ Name: "3 : Goto Bookmark 3", Action: MakeGotoBookmark(3), }, &Menu{ Name: "4 : Goto Bookmark 4", Action: MakeGotoBookmark(4), }, &Menu{ Name: "5 : Goto Bookmark 5", Action: MakeGotoBookmark(5), }, &Menu{ Name: "6 : Goto Bookmark 6", Action: MakeGotoBookmark(6), }, &Menu{ Name: "7 : Goto Bookmark 7", Action: MakeGotoBookmark(7), }, &Menu{ Name: "8 : Goto Bookmark 8", Action: MakeGotoBookmark(8), }, &Menu{ Name: "9 : Goto Bookmark 9", Action: MakeGotoBookmark(9), }, }, }
View Source
var CARDS = flag.Bool("cards", false, "Preferred mode: Present numbered pages to choose what to boot.")
View Source
var Cards = make(map[int]*Card)
View Source
var CommandFuncs = make(map[string]CommandFunc)
View Source
var DEMO = flag.String("demo", "", "[demo mode] run a demo")
View Source
var Demos map[string]func(net.Conn)
View Source
var Edit_Menu = &Menu{ Name: "Edit", Items: []*Menu{ &Menu{ Name: "X : Cut", Action: &EditAction{'X'}, }, &Menu{ Name: "C : Copy", Action: &EditAction{'C'}, }, &Menu{ Name: "V : Paste", Action: &EditAction{'V'}, }, }, }
View Source
var FLAVOR = flag.String("flavor", "", "what flavor the server (e.g. alpha, beta, prod)")
View Source
var FS = flag.String("fs", "", "Danger: Filesystem root that can be read and written remotely")
View Source
var FlagHttpPort = flag.Int("http_port", 8080, ":port for web")
View Source
var FlagInkeyRaw = flag.String("inkey_raw", "inkey_trap.lwraw", "raw machine code fragment for HdbDos")
View Source
var FlagInputs = flag.String("inputs", "/home/pizga/public-inputs/", "serving directory for inputs to coco-shelf")
View Source
var FlagL0ModuleDirPath = flag.String("l0_module_dir", "", "[experimental] where to find commands for Level0")
View Source
var FlagReleases = flag.String("releases", "/home/pizga/public-releases/", "serving directory for built releases")
View Source
var FlagSideloadRaw = flag.String("sideload_raw", "sideload.lwraw", "raw machine code fragment for HdbDos")
View Source
var FlagTemp = flag.String("temp", "/home/pizga/public-temp/", "for whatever")
View Source
var FlagWebReaderPwFlipped = flag.String("web_reader_pw_flipped", "XLXL-KVYYOVH", "magic web reader pw (optional)")
View Source
var FlagWebStatic = flag.String("web_static", "", "web-static serving directory")
View Source
var FloppySizes = []int64{FloppySize35, FloppySize40, FloppySize80}
View Source
var ForcePage = flag.Int("force_page", 0, "Always launch this page")
View Source
var GimeText40Video = &VideoSettings{0x4C, [8]byte{0x03, 0x05, 0x12, 0x00, 0x0F, 0xD8, 0, 0}}
View Source
var GimeText80Video = &VideoSettings{0x4C, [8]byte{0x03, 0x15, 0x12, 0x00, 0x0F, 0xD8, 0, 0}}
View Source
var Go_Menu = &Menu{ Name: "Go", Items: []*Menu{ &Menu{ Name: "AAAAAAAAAAA", Action: nil, }, &Menu{ Name: "BBBBBBBBBBBBB", Action: nil, }, &Menu{ Name: "CCCCCCCCCCCCCC", Action: nil, }, }, }
View Source
var Help_Menu = &Menu{ Name: "?Help", Action: &HelpAction{}, }
View Source
var Inodes [1024]*LMPath // Index excess 1024
View Source
var KIDSPORT = flag.Int("kidsport", 20185, "Lemma kids can connect here (for treenet)")
View Source
var KnownNodes map[string]*TreeNode // closure Parents and immediate Kids
View Source
var LEMMAN_FS = flag.String(
"lemman_fs", "lemman_fs", "directory to use as LemMan filesystem")
View Source
var LEMMINGS_ROOT = flag.String("lemmings_root", "LEMMINGS/", "read only resource directory, for -cards mode.")
View Source
var LEVEL0 = flag.String("level0", "", "[experimental Level0 mode] level0.bin (decb) to upload")
View Source
var LMPaths = make(map[uint]*LMPath)
View Source
var LemManNames = []string{
"Lem_UNKNOWN_ZERO",
"Lem_Create",
"Lem_Open",
"Lem_MakDir",
"Lem_ChgDir",
"Lem_Delete",
"Lem_Seek",
"Lem_Read",
"Lem_Write",
"Lem_ReadLn",
"Lem_WritLn",
"Lem_GetStat",
"Lem_SetStat",
"Lem_Close",
}
View Source
var LogicalRamImage [0x10000]byte // capture coco image.
View Source
var MatchPathFront = regexp.MustCompile("^(/[-a-z]*)")
View Source
var ModuleMap map[string]*L0Module
View Source
var Mount_Menu = &Menu{ Name: "Mount", Items: []*Menu{ &Menu{ Name: "0 : Mount Drive 0", Action: MakeMounter(0), }, &Menu{ Name: "1 : Mount on Drive 1", Action: MakeMounter(1), }, &Menu{ Name: "2 : Mount on Drive 2", Action: MakeMounter(2), }, &Menu{ Name: "3 : Mount on Drive 3", Action: MakeMounter(3), }, &Menu{ Name: "4 : Mount on Drive 4", Action: MakeMounter(4), }, &Menu{ Name: "5 : Mount on Drive 5", Action: MakeMounter(5), }, &Menu{ Name: "6 : Mount on Drive 6", Action: MakeMounter(6), }, &Menu{ Name: "7 : Mount on Drive 7", Action: MakeMounter(7), }, &Menu{ Name: "8 : Mount on Drive 8", Action: MakeMounter(8), }, &Menu{ Name: "9 : Mount on Drive 9", Action: MakeMounter(9), }, &Menu{ Name: "Unmount All", Action: &UnmountAllAction{}, }, &Menu{ Name: "View Mounts", Action: &ViewMountsAction{}, }, }, }
View Source
var NAME = flag.String("name", "", "Name to use (for treenet)")
View Source
var NextInodeVar = 1024
View Source
var OpNames = []string{
"???", "Cre", "Ope", "Mkd", "Cgd", "Del", "Sek", "Rea", "Wri", "RLn", "WLn", "Get", "Set", "Clo",
}
View Source
var PARENT = flag.String("parent", "", "Connect to a parent lemma host:port (for treenet)")
View Source
var PORT = flag.Int("port", 2321, "Listen on this TCP port (V41)")
View Source
var PRINT_VERSION = flag.Bool("version", false, "Just print protocol version")
View Source
var PROGRAM = flag.String("program", "", "[one program mode] Program to upload to COCOs")
View Source
var Pref_Menu = &Menu{ Name: "Pref", Items: []*Menu{ &Menu{ Name: "User Settings", Action: nil, }, &Menu{ Name: "Host Settings", Action: nil, }, }, }
View Source
var PrevLemmaError byte = LemmaErrorMin - 1
View Source
var PublicExceptions = map[string]bool{ "/": true, "/pizga": true, "/pizga/Homes": true, }
View Source
var Quik_Menu = &Menu{ Name: "Quik", Items: []*Menu{ &Menu{ Name: "Speed Poke", Items: []*Menu{ &Menu{Name: "Y : Fast 1.78 MHz", Action: &ModeAction{'S', 'Y'}}, &Menu{Name: "N : Slow 0.9 MHz", Action: &ModeAction{'S', 'N'}}, &Menu{Name: "R : ROM fast, rest slow", Action: &ModeAction{'S', 'R'}}, &Menu{Name: "X : GimeX 2.86 MHz", Action: &ModeAction{'S', 'X'}}, }, }, &Menu{ Name: "Hitachi 6309 Mode", Items: []*Menu{ &Menu{Name: "Y : 6309 Native Mode", Action: &ModeAction{'H', 'Y'}}, &Menu{Name: "N : 6809 Compatability Mode", Action: &ModeAction{'H', 'N'}}, }, }, &Menu{ Name: "Un-hijack the CLEAR Key", Action: &ModeAction{'U', 0}, }, &Menu{ Name: "Reboot", Action: &ModeAction{'R', 0}, }, }, }
View Source
var SCAN_KEYBOARD = flag.Bool("scan_keyboard", true, "flag flip for CMD_KEYBOARD (to detect SHIFT, etc)")
View Source
var SetBookmark_Menu = &Menu{ Items: []*Menu{ &Menu{ Name: "0 : Set Bookmark 0", Action: MakeSetBookmark(0), }, &Menu{ Name: "1 : Set Bookmark 1", Action: MakeSetBookmark(1), }, &Menu{ Name: "2 : Set Bookmark 2", Action: MakeSetBookmark(2), }, &Menu{ Name: "3 : Set Bookmark 3", Action: MakeSetBookmark(3), }, &Menu{ Name: "4 : Set Bookmark 4", Action: MakeSetBookmark(4), }, &Menu{ Name: "5 : Set Bookmark 5", Action: MakeSetBookmark(5), }, &Menu{ Name: "6 : Set Bookmark 6", Action: MakeSetBookmark(6), }, &Menu{ Name: "7 : Set Bookmark 7", Action: MakeSetBookmark(7), }, &Menu{ Name: "8 : Set Bookmark 8", Action: MakeSetBookmark(8), }, &Menu{ Name: "9 : Set Bookmark 9", Action: MakeSetBookmark(9), }, }, }
View Source
var SlashPage []byte
View Source
var TESTHOST = flag.String("testhost", "", "Host that runs tests")
View Source
var TopMenu = &Menu{ Name: "", Items: []*Menu{ View_Menu, Edit_Menu, Quik_Menu, Mount_Menu, Book_Menu, Help_Menu, }, }
View Source
var VdgText32Video = &VideoSettings{0xCC, [8]byte{0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0, 0}}
View Source
var View_Menu = &Menu{ Name: "View", Items: []*Menu{ &Menu{ Name: "Info", Action: &ViewInfoAction{}, }, &Menu{ Name: "Text View", Action: &ViewTextAction{}, }, &Menu{ Name: "Hex View", Action: &ViewHexAction{}, }, }, }
Functions ¶
func AsciiToInjectBytes ¶
func AttemptToLoadModule ¶
func AttemptToLoadModule(filename string)
func ContinueLongLines ¶
func ContinueLongLines(t T.TextScreen, lines []string) (result []string)
func DescribeVideoModes ¶
func DrawFullScreenLines ¶
func DrawFullScreenLines(t T.TextScreen, lines []string, title string)
func EchoCommand ¶
func EmptyDecbInitializedDiskImage ¶
func EmptyDecbInitializedDiskImage() []byte
func ErrorAlert ¶
func ErrorAlert(t T.TextScreen, lines []string)
func ErrorAlertChop ¶
func ErrorAlertChop(t T.TextScreen, line string)
func Flip13AfterFlipMark ¶
func Flip13Filepath ¶
func GetBCommand ¶
func GetBlockDevice ¶
func GetTCommand ¶
func GimeText40x24_OnPage37_ReturnNumRows ¶
extraVerticalGap may be 0, 1, 2, or 3. Returns number of full rows visibile, up to 24.
func HdbDosHijack ¶
Entry from waiter.go for a Hijack.
func HdbDosSector ¶
Entry from waiter.go for a Sector.
func HelpCommand ¶
func HitachiMode ¶
func LemManCommandName ¶
func LemmaError ¶
func Level0Control ¶
func NewDriveTempName ¶
func OnText40At2000Run ¶
func OnTextVDGAt0400Run ¶
func PutTCommand ¶
func ReadFiveLoop ¶
func RecolorMenuBar ¶
func RecolorMenuBar(t T.TextScreen, group *Menu, chosen *Menu)
func ReconnectPort ¶
func RegsString ¶
func ScanKeyboard ¶
func SendInitialInjections ¶
func SendInitialInjections(ses *Session)
func SetVideoMode ¶
func ShortTimestamp ¶
func ShortTimestamp() string
func SplitTextAsLines ¶
func TestCharRow40 ¶
func TextChooserShell ¶
func TextChooserShell(com *coms.Comm, ds *DriveSession, t T.TextScreen)
called by hdbdos HdbDosHijack
func TimeVector ¶
func UndoAlterTask0 ¶
func UploadProgram ¶
func UpperCleanName ¶
func VerticalEchoCommand ¶
func VideoModes ¶
func ViewBoxedLines ¶
func ViewBoxedLines(t T.TextScreen, lines []string, color byte)
func ViewBoxedText ¶
func ViewBoxedText(t T.TextScreen, text []byte, color byte)
func ViewFullScreenLines ¶
func ViewFullScreenLines(t T.TextScreen, lines []string, color byte)
func ViewFullScreenText ¶
func ViewFullScreenText(t T.TextScreen, text []byte, color byte)
Types ¶
type BaseModel ¶
type BaseModel struct {
// contains filtered or unexported fields
}
func (*BaseModel) Decoration ¶
func (mod *BaseModel) Decoration(ds *DriveSession) string
func (*BaseModel) KidAtFocus ¶
KidAtFocus understands 0->parent; 1->this; 2.. are kids.
type CommandFunc ¶
type DriveImage ¶
func (*DriveImage) GoString ¶
func (di *DriveImage) GoString() string
func (*DriveImage) String ¶
func (di *DriveImage) String() string
type DriveSession ¶
type DriveSession struct {
// contains filtered or unexported fields
}
func NewDriveSession ¶
func NewDriveSession(ses *Session, com *coms.Comm, home, retain, trash string) *DriveSession
func (*DriveSession) CreateEmptyDriveImageAtIfNeeded ¶
func (ds *DriveSession) CreateEmptyDriveImageAtIfNeeded(nth byte) *DriveImage
func (*DriveSession) HdbDosCleanup ¶
func (ds *DriveSession) HdbDosCleanup()
func (*DriveSession) HdbDosCleanupOneDrive ¶
func (ds *DriveSession) HdbDosCleanupOneDrive(driveNum byte)
func (*DriveSession) IsModelMounted ¶
func (ds *DriveSession) IsModelMounted(c Model) (drive byte, ok bool)
func (*DriveSession) SetDrive ¶
func (ds *DriveSession) SetDrive(nth byte, c Model)
func (*DriveSession) String ¶
func (ds *DriveSession) String() string
type EditAction ¶
type EditAction struct {
What byte
}
type GotoBookmarkAction ¶
type GotoBookmarkAction struct {
N byte
}
func (*GotoBookmarkAction) Do ¶
func (o *GotoBookmarkAction) Do(nav *Navigator, mod Model, path string)
type HdbDosSession ¶
type HdbDosSession struct { Ses *Session NumReads int64 // When 1, send injections. DriveSession *DriveSession }
type HelpAction ¶
type HelpAction struct { }
type L0Module ¶
type L0Module struct {
// contains filtered or unexported fields
}
func FindModule ¶
type LMRegs ¶
type LMRegs struct {
// contains filtered or unexported fields
}
func (LMRegs) WriteBytes ¶
type LemmaHandler ¶
func (*LemmaHandler) ServeHTTP ¶
func (lh *LemmaHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type Menu ¶
type Menu struct { Name string // first char is shortcut Items []*Menu Action MenuAction }
type MenuAction ¶
type MenuAction interface { Do(nav *Navigator, mod Model, path string) Undo(nav *Navigator, mod Model, path string) String(nav *Navigator, mod Model, path string) string }
func MakeGotoBookmark ¶
func MakeGotoBookmark(n byte) MenuAction
func MakeMounter ¶
func MakeMounter(n byte) MenuAction
func MakeSetBookmark ¶
func MakeSetBookmark(n byte) MenuAction
type MenuActionHistory ¶
type MenuActionHistory struct {
History []*MenuAction
}
type ModeAction ¶
type MountAction ¶
type MountAction struct {
N byte
}
type Navigator ¶
type Navigator struct { // contains filtered or unexported fields }
func (*Navigator) ClearScreen ¶
func (nav *Navigator) ClearScreen()
type NumStrSlice ¶
type NumStrSlice []NumStr
func (NumStrSlice) Len ¶
func (o NumStrSlice) Len() int
func (NumStrSlice) Less ¶
func (o NumStrSlice) Less(i, j int) bool
func (NumStrSlice) Swap ¶
func (o NumStrSlice) Swap(i, j int)
type Proc ¶
type Proc struct { Command string Argv []string Ses *Session Channel uint InPacket chan TaggedBytes }
func (*Proc) CocoCreate ¶
func (*Proc) PrintfStderr ¶
func (*Proc) RunCommandFunc ¶
func (o *Proc) RunCommandFunc(fn CommandFunc)
func (*Proc) WriteBytes ¶
type Session ¶
type Session struct { ID int Conn net.Conn IScreen IScreen LineBuf *LineBuf Hostname string RomID []byte AxiomVars []byte Hellos map[uint][]byte Block0 *os.File Block1 *os.File Procs map[uint]*Proc // mux.go HdbDos *HdbDosSession Cleanups []func() InitGimeRegs []byte BasicGimeRegs []byte T T.TextScreen }
type SetBookmarkAction ¶
type SetBookmarkAction struct {
N byte
}
func (*SetBookmarkAction) Do ¶
func (o *SetBookmarkAction) Do(nav *Navigator, mod Model, path string)
type SlashHandler ¶
type SlashHandler struct { }
func (*SlashHandler) ServeHTTP ¶
func (sh *SlashHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)
type TaggedBytes ¶
type UnmountAllAction ¶
type UnmountAllAction struct { }
type VideoSettings ¶
func (*VideoSettings) Flush ¶
func (vs *VideoSettings) Flush(ses *Session)
type ViewBookmarksAction ¶
type ViewBookmarksAction struct { }
func (*ViewBookmarksAction) Do ¶
func (o *ViewBookmarksAction) Do(nav *Navigator, mod Model, path string)
type ViewHexAction ¶
type ViewHexAction struct { }
type ViewInfoAction ¶
type ViewInfoAction struct { }
type ViewMountsAction ¶
type ViewMountsAction struct { }
type ViewTextAction ¶
type ViewTextAction struct { }
type XTextScreen ¶
type XTextScreen struct { B []byte // screen RAM not yet sent. W, H int // screen dimensions P int // cursor Addr int Majuscule bool // Use 0..63 Ses *Session }
TODO: convert to new Screen. TODO: requires dealing with LineBuf::GetLine this one depends on CMD_PUTCHAR.
func NewTextScreen ¶
func NewTextScreen(ses *Session, w, h int, addr int) *XTextScreen
func (*XTextScreen) Clear ¶
func (t *XTextScreen) Clear()
func (*XTextScreen) Flush ¶
func (t *XTextScreen) Flush()
func (*XTextScreen) PutChar ¶
func (t *XTextScreen) PutChar(ch byte)
func (*XTextScreen) PutStr ¶
func (ax *XTextScreen) PutStr(s string)
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package skiplist implement skip list data structure.
|
Package skiplist implement skip list data structure. |
strdy (pronounced "sturdy") is a database for holding a string-to-string map.
|
strdy (pronounced "sturdy") is a database for holding a string-to-string map. |
This file was generated by scrape_os9_symbols
|
This file was generated by scrape_os9_symbols |
Click to show internal directories.
Click to hide internal directories.