47 lines
959 B
Go
47 lines
959 B
Go
package main
|
|
|
|
import (
|
|
"github.com/br0xen/termbox-util"
|
|
"github.com/nsf/termbox-go"
|
|
//"strings"
|
|
"fmt"
|
|
)
|
|
|
|
const (
|
|
MODE_INIT = iota
|
|
MODE_DEV
|
|
MODE_RUN
|
|
MODE_DEBUG
|
|
)
|
|
|
|
type MainScreen struct {
|
|
the_cpu *TIS_CPU
|
|
GameMode int
|
|
}
|
|
|
|
func (screen *MainScreen) handleKeyEvent(event termbox.Event) int {
|
|
if event.Type == termbox.EventKey {
|
|
if event.Key == termbox.KeyEsc {
|
|
return EXIT_SCREEN_INDEX
|
|
}
|
|
}
|
|
return MAIN_SCREEN_INDEX
|
|
}
|
|
|
|
func (screen *MainScreen) performLayout() {}
|
|
|
|
func (screen *MainScreen) drawScreen(style Style) {
|
|
if screen.GameMode == MODE_INIT {
|
|
screen.the_cpu = GetDefaultCPU()
|
|
screen.GameMode = MODE_DEV
|
|
}
|
|
for i := range screen.the_cpu.nodes {
|
|
WriteToLog(fmt.Sprintf("Node Row: %d\n", i))
|
|
for j, _ := range screen.the_cpu.nodes[i] {
|
|
WriteToLog(fmt.Sprintf("Node Col: %d\n", j))
|
|
x_pos, y_pos := (18 * j), (18 * i)
|
|
termbox_util.DrawBorder(x_pos, y_pos, x_pos+16, y_pos+16, style.default_fg, style.default_bg)
|
|
}
|
|
}
|
|
}
|