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)
|
||
|
}
|
||
|
}
|
||
|
}
|