emulator

package
v0.0.0-...-33ef502 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 4, 2021 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Breaks *string
View Source
var CartFile *string
View Source
var Debug *bool
View Source
var DskAFile *string
View Source
var LoadSlow *bool
View Source
var RomFile *string
View Source
var TapFile *string
View Source
var WatchPoints *string

Functions

func NewDebugWindow

func NewDebugWindow(name string, machine Machine, debuger *debugger) *debug

func NewDebugger

func NewDebugger(clock Clock) *debugger

func SineWave

func SineWave(userdata unsafe.Pointer, stream *C.Uint8, length C.int)

Types

type Clock

type Clock interface {
	// AddTStates increment the tStates counter and return true if the frame is not done
	AddTicker(mod uint, t Ticker)
	Run()
	RunFor(seconds uint)
	Stats() string
	Pause()
	Resume()
}

func NewCLock

func NewCLock(hz uint, blocks uint) Clock

type DebugControl

type DebugControl interface {
	Update()
}

type Debugger

type Debugger interface {
	cpu.DebuggerCallbacks
}

type Game

type Game interface {
	SetStatus(txt string)
	SetOnKey(onKey func(sdl.Scancode))
}

func NewGame

func NewGame(name string, machine Machine) Game

type Machine

type Machine interface {
	OnKey(key sdl.Scancode)
	Monitor() Monitor
	Clock() Clock
	UIControls() []gui.GUIObject
	Control() map[string]gui.GUIObject
	GetVolumeControl() func(float64)
	SetDebugger(cpu.DebuggerCallbacks)
	Reset()
}

type Monitor

type Monitor interface {
	Screen() *gui.Display
	FrameDone()
	FPS() float64
	SetRedraw(redraw func())
}

func NewMonitor

func NewMonitor(img *gui.Display) Monitor

type SoundChannel

type SoundChannel interface {
	GetBuffer(int) ([]*SoundData, int)
}

type SoundData

type SoundData struct {
	L, R float64
}

type SoundSource

type SoundSource interface {
	SoundTick()
	GetChannels() []SoundChannel
}

type SoundSystem

type SoundSystem interface {
	Ticker
	AddSource(source SoundSource)
	SetVolume(float64)
}

func NewSoundSystem

func NewSoundSystem(sampleRate uint) SoundSystem

type Ticker

type Ticker interface {
	Tick()
}

Directories

Path Synopsis
storage

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL